mysql的创建及使用

常用命令

(1)启动docker
systemctl start docker

(2)列出docker 中的镜像
docker image ls

(3)启动(创建)mysql(其中名字和密码可以自己设)
docker run itd --name=mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123 docker.io/mysql
在这里插入图片描述

(4)进入mysql(识别中文)
docker exec -it mysql env LANG=C.UTF-8 bin/bash

(5)使用root用户进入mysql
mysql -u root -p

关闭以后下一次重新打开mysql的方法

(1)重新启动docker
systemctl restart docker
在这里插入图片描述
通过 docker ps 可以看到此时mysql并没有运行

(2)显示所有的容器,包括之前已经关闭的
docker ps -a
在这里插入图片描述
可以看到之前创建好的 mysql 的 CONTAINER ID,可以通过这个来重新启动mysql

(3)重新启动mysql
docker restart CONTAINER ID
在这里插入图片描述
通过 docker ps 可以看到此时mysql已经开始运行
(4)进入mysql
docker exec -it mysql env LANG=C.UTF-8 bin/bash在这里插入图片描述
(5)使用root用户登录
在这里插入图片描述

mysql语句

创建用户

CREATE USER ‘用户名’@’%’ IDENTIFIED by ‘密码’
例:CREATE USER ‘sql_test’@’%’ IDENTIFIED by ‘123’

这里的%指可以被任何 ip 访问

注:这里区分大小写,一定要大写

刷新:flush privileges;
在这里插入图片描述

查看所有用户

select user,host from mysql.user

在这里插入图片描述

给用户授权

grant all privileges on *.* to 'lia'@'%'

这里的*.*表示所有权限
在这里插入图片描述

删除用户

drop user sql_test

drop会删除表中的数据及其他权限表的内容
也可以使用delete来删除用户,但是只会删除表中的数据,需要使用flush privileges 来刷新权限

这里有两个 sql_test,默认删除的是’XXX’@’%'这个用户
在这里插入图片描述
如果要删除另外一个,则使用
drop user sql_test@ip
在这里插入图片描述

查看所有数据库

show databases;
在这里插入图片描述

新建数据库

create database 数据库名称;
在这里插入图片描述

使用数据库

use 数据库名称;

创建表

三大范式

1.原子性

即:字段不可再拆分

数据库表的每一列都是不可分割的原子数据项,而不能是集合、数组等非原子数据项

2.主键唯一性

数据库表中的每一个实例或记录必须可以被唯一的区分

选取一个能区分每个实体的属性或属性组,作为实体的唯一标识

即:保证两行不重复

可以采用主键策略

3.非主依赖

字段只能依赖于主键,不能依赖于非主键

创建表示例

在这里插入图片描述
在这里插入图片描述

相关命令

查看表的结构

desc 表名
例:
在这里插入图片描述

修改表名

alter table 旧表名 rename 新表名
例:alter table book_tab rename book_tabbbb
在这里插入图片描述

修改表中的字段类型/范围

alter table 表名 modify 字段 类型/范围;
例:alter table book_tab modify book_title varchar(50);
在这里插入图片描述

修改表中的字段名称

alter table book_tab change 旧字段 新字段 新字段类型/范围;
例:alter table book_tab change book_title book_name varchar(60);
在这里插入图片描述

在表中添加字段

alter table book_tab add 字段名称 字段类型/范围;
例:alter table book_tab add book_publisher varchar(50);
在这里插入图片描述

删除字段

alter table book_tab drop 字段;
例:alter table book_tab drop book_publisher;
在这里插入图片描述


版权声明:本文为qwserft原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。