数据库

 """
 1、什么是数据库:管理数据的系统 - 安装某种管理数据的系统 - 管理的对象本质是文件
 2、存储数据的位置:内存、硬盘
 3、什么是系统:运行在硬件基础上,管理其他软件
 """
 ​
 # 数据库的组成
 """
 库:存放多张表 - 文件夹
 表:包含多条相同结构的记录 - 文件
 记录:包含多个key-value键值对的一条数据 - 二进制数据
 字段:描述信息 - 信息本身 == key-value - 二进制数据
 ​
 stu
 id name age gender
 1 Bob 18 男
 2 Tom 17 女
 ...
 ​
 teacher
 ...
 ​
 """

数据库的分类

 # 1)关系与非关系
 # 关系:数据库中表与表之间有联系 - mysql
 # 非关系:没有表概念 - redis、mongodb(介于关系与非关系)
 ​
 # 2)内存与硬盘
 # 硬盘:数据可以永久存储 - mysql、mongodb
 # 内存:数据的存取效率极高 - redis、memcache
 ​
 # 3)sql与nosql
 # sql:数据库操作通过sql语句
 # nosql:数据库操作就是key-value形式(value就是一条记录)
 # stu - {'name': 'Bob', 'age': 18}
 # stus - [{'name': 'Bob', 'age': 18}, {'name': 'Tom', 'age': 18}]
 # name - 'Jerry'

卸载

 """
 前提)启动终端,输入 mysql,如果不是提示 不是内部或外部命令,代表已安装数据库
 ​
 1)直接连入
  i 搜索:服务,检索mysql服务,有
  停止服务,并移除服务 - 启动管理员终端:mysqld --remove
 
  ii 搜索:服务,检索mysql服务,无 (mysql使用命令启动)
  停止服务,启动管理员终端
  tasklist | findstr mysql
  taskkill /pid 进程pid /f
 
 2)连接超时
  搜索:服务,检索mysql服务,移除服务即可
 
 3)移除环境变量
 ​
 总结:如果能连入,先停止服务 | 如果添加了服务,就移除服务 | 取消环境变量配置
 """

安装

 """
 1、解压免安装版本(5.6 - 没有初始密码)
 2、配置环境变量:数据库绝对路径下的bin
 3、配置服务:
  启动管理员终端:mysqld --install [nmysql]
 """

连接数据库

 1)游客登陆(不一定能登入,登入了也啥都不能干)
 >: mysql
 ​
 2)账号密码登录
 >: mysql -u root -p
 再输入密码,没有任何提示,没有密码直接回车
 ​
 3)连接指定服务器的mysql
 >: mysql -h ip地址 -P 端口号 -u 账号 -p
 回车后敲入密码
 eg:
 >: mysql -hlocalhost -P3306 -uroot -p
 ​
 4)退出数据库
 >: quit
 >: exit

用户信息查看

 1)查看当前登录的用户
 mysql>: select user();
 ​
 2)root权限下可以查看所有用户信息
 mysql>: select * from mysql.user;
 mysql>: select * from mysql.user \G
 mysql>: select user,password,host from mysql.user;
 ​
 3)root登录下,删除游客(操作后要重启mysql服务)
 mysql>: delete from mysql.user where user='';
 ​
 4)root登录下,修改密码(操作后要重启mysql服务)
 mysql>: update mysql.user set password=password('12345678') where host='localhost';
 ​
 5)没有登录
 >: mysqladmin -u用户名 -p旧密码 -h域名 password "新密码"
 eg>: mysqladmin -uroot -p12345678 -hlocalhost password "root"
 ​
 6)root登录下,创建用户
 mysql>:grant 权限们 on 数据库名.表名 to 用户名@主机名 identified by '密码';

数据库的基本操作

 1)查看已有数据库
 mysql>:show databases;
 ​
 2)选择某个数据库
 mysql>:use 数据库名
 ​
 3)查看当前所在数据库
 mysql>:select database();
 ​
 4)创建数据库
 mysql>:create database 数据库名 [charset=编码格式];
 eg>: create database owen;
 eg>: create database zero charset=utf8;
 eg>: create database tank;
 ​
 5)查看创建数据库的详细内容
 mysql>:show create database 数据库名;
 eg>: show create database owen;
 ​
 6)删除数据库
 mysql>: drop database 数据库名;
 eg>: drop database tank;

表的基本操作

 前提:先选取要操作的数据库
 ​
 1)查看已有表
 mysql>:show tables;
 ​
 2)创建表
 mysql>:create table 表名(字段们);
 eg>: create table student(name varchar(16), age int);
 eg>: create table teacher(name varchar(16), age int);
 ​
 3)查看创建表的sql
 mysql>:show create table 表名;
 eg>: show create table student;
 ​
 ​
 4)查看创建表的结构
 mysql>:desc 表名;
 ​
 5)删除表
 mysql>: drop table 表名;
 eg>: drop table teacher;

记录的基本操作

 1)查看某个数据库中的某个表的所有记录,如果在对应数据库中,可以直接查找表
 mysql>: select * from [数据库名.]表名;
 注:*代表查询所有字段
 ​
 2)给表的所有字段插入数据
 mysql>: insert [into] [数据库名.]表名 values (值1,...,值n);
 eg:如果给有name和age两个字段的student表插入数据
 1条>:insert into student values ('Bob', 18);
 多条>:insert into student values ('张三', 18), ('李四', 20);
 指定库>:insert owen.student values ('张三', 18), ('李四', 20);
 ​
 3)根据条件修改指定内容
 mysql>: update [数据库名.]表名 set 字段1=新值1, 字段n=新值n where 字段=旧值;
 eg:> update student set name='王五', age='100' where name='张三';
 注:i) 可以只修改部分字段 ii) 没有条件下,所有记录都会被更新
 eg:> update student set name='呵呵';
 ​
 4)根据条件删除记录
 mysql>: delete from [数据库名.]表名 where 条件;
 eg:> delete from student where age<30;

mysql安装,卸载; 库和表的基础操作的更多相关文章

  1. MySQL用户、库、表(单/多)操作

    用户及权限操作: 管理员登录:mysql -uroot -p 用户设置密码:set password=password(密码); 查看数据库所有用户:select * from mysql.user; ...

  2. Mac下安装MySQL、Workbench以及建数据库建表最基础操作

    刚用上Mac,什么都不懂,加之以前还没有用过mysql,就想着在Mac上装一个mysql来自己玩,奈何,在网上找了大半天,没有一个干货!愤怒!下面是我安装的过程,希望能帮到和我情况差不多的朋友   首 ...

  3. MySQL安装卸载、idea中Database的使用、常用的sql语句

    MySQL安装卸载 MySQL安装 在下面的资源链接中下载MySQL软件压缩包(绿色版),这个版本是MySQL5.7.29的,本教程也只适用于这个绿色版的,如果下载的是安装包那就可能有些地方不一样了, ...

  4. {MySQL的库、表的详细操作}一 库操作 二 表操作 三 行操作

    MySQL的库.表的详细操作 MySQL数据库 本节目录 一 库操作 二 表操作 三 行操作 一 库操作 1.创建数据库 1.1 语法 CREATE DATABASE 数据库名 charset utf ...

  5. day 36 MySQL的库、表的详细操作

    MySQL的库.表的详细操作   MySQL数据库 本节目录 一 库操作 二 表操作 三 行操作 一 库操作 1.创建数据库 1.1 语法 CREATE DATABASE 数据库名 charset u ...

  6. MYSQL数据库、用户、表等基础构建

    MYSQL数据库.用户.表等基础构建: 1.->:创建数据库: 1.1. create schema [数据库名称] default character set utf8 collate utf ...

  7. MySQL的库、表的详细操作

    目录 MySQL的库.表的详细操作 一 库操作 二 表操作 MySQL的库.表的详细操作 本节目录 一 库操作 1.创建数据库 1.1 语法 CREATE DATABASE 数据库名 charset ...

  8. mysql安装 卸载 查字符集编码

    下载地址 :     https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.11-winx64.zip 解压zip  解压完之后的目录 在里面新建一 ...

  9. MYSQL安装与库的基本操作

    mysql数据库 什么是数据库 # 用来存储数据的仓库 # 数据库可以在硬盘及内存中存储数据 数据库与文件存储数据区别 数据库本质也是通过文件来存储数据, 数据库的概念就是系统的管理存储数据的文件 数 ...

随机推荐

  1. HDU 2243 考研路茫茫——单词情结 ( Trie图 && DP && 矩阵构造幂和 )

    题意 :  长度不超过L,只由小写字母组成的,至少包含一个词根的单词,一共可能有多少个呢?这里就不考虑单词是否有实际意义. 比如一共有2个词根 aa 和 ab ,则可能存在104个长度不超过3的单词, ...

  2. Socket通信前必须考虑的几件事

    如何处理I/O?是让程序阻塞等待响应,还是在后台处理这些事?这是软件设计的关键因素.阻塞式的I/O操作会让程序架构难以扩展,而后台处理I/O也是比较困难的.   如何处理那些临时的.来去自由的组件?我 ...

  3. Ubuntu 16.04下使用docker部署MySQL主从复制

    (以下docker相关的命令,需要在root用户环境下或通过sudo提升权限来进行操作.) 首先更新 软件源 https://mirrors.tuna.tsinghua.edu.cn/help/ubu ...

  4. 洛谷 P2590 BZOJ 1036 [ZJOI2008]树的统计

    Time limit 10000 ms//另外,BZOJ只算所有点的总时限,所以可能会放过一些原本会TLE的代码 Memory limit 165888 kB OS Linux SourceZJOI2 ...

  5. 深入探究JVM(1) - Java的内存区域解析

    http://blog.csdn.net/sczyh22/article/details/46652901<br>Java 虚拟机在执行Java程序的时候会把它管理的内存区域划为几部分,这 ...

  6. docker-compose部署kafka

    docker-compose.yml version: '2' services: zookeeper: image: develop-harbor.geostar.com.cn/3rd/zookee ...

  7. Linux驱动开发7——I/O内存分配

    CPU通过物理地址访问DDR和外设,DDR内存称为物理内存地址空间,外设寄存器组称为I/O内存地址空间. ARM采用统一编址,而X86采用独立编制.上一章介绍了DDR内存分配,这一章介绍I/O内存分配 ...

  8. MySQL主从复制之半同步模式

    MySQL主从复制之半同步模式 MySQL半同步介绍: 一般情况下MySQL默认复制模式为异步,何为异步?简单的说就是主服务器上的I/O threads 将binlog写入二进制日志中就返回给客户端一 ...

  9. Netty 系列之 Netty 高性能之道 高性能的三个主题 Netty使得开发者能够轻松地接受大量打开的套接字 Java 序列化

    Netty系列之Netty高性能之道 https://www.infoq.cn/article/netty-high-performance 李林锋 2014 年 5 月 29 日 话题:性能调优语言 ...

  10. 如何查看yum安装的程序包都放在哪些地方了?

    yum安装, 是先下载下来, 然后安装, 用dnf代替yum后, 配置文件跟yum类似, 也是放在 /etc/dnf/ 目录下的, 也有dnf.conf 配置文件等 dnf list后面还可以跟参数: ...