以下命令使用PowerShell运行
1.如果没有mysql镜像,先获取mysql的官方Docker镜像,我这里使用的是5.7.24版本
docker pull mysql/mysql-server:5.7.24
如果不指定版本名,则默认为最新版:
docker pull mysql/mysql-server
- 生成mysql容器,同时设置数据库字符集,防止出现乱码
docker run --name mysql01 -d -p 3306:3306 mysql/mysql-server:5.7.24 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci
参数说明
--name mysql:容器指定名称为mysql;
-d:后台运行容器,并返回容器ID;
-p 3306:3306:将宿主机的3306端口(前者)映射到容器的3306端口(后者);
--character-set-server=utf8mb4: 设置服务器字符集为UTF-8;
--collation-server:设置排序规则;
-
运行完成后输入docker ps命令来查看正在运行中的容器实例,当看到Status为healthy时表示已启动完毕
image.png
3.修改root账号的默认密码
运行以下命令,查看之前运行的容器日志,可以看到mysql给的随机密码
docker logs mysql01
image.png
- 输入以下命令进入容器:
docker exec -it mysql01 bash
使用root账号和默认密码登录mysql01数据库实例,只需要把密码复制点击右键粘贴便可:
mysql –uroot -p
image.png
接着是修改root账号的密码,命令必须以英文【;】结束:
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
如果不需要创建新用户,则输入两次exit命令,第一次退出mysql回到容器,第二次退出容器回到windows
如果需要创建新用户,则无需退出,接着创建新用户
4.创建一个新的登录用户
使用以下语句新建一个用户账号
CREATE USER 'jianshu'@'%' IDENTIFIED BY '123456' require none;
命令说明:
- 创建一个名称为密码为jianshu的账号,
- %表示此账号可使用所有IP登录到mysql,
- localhost则表示只能在本机登录mysql,
- “require none”可以不写,默认;
查看用户表
使用以下命令进入系统库
use mysql;
查看账号信息,可以看到新建的用户账号:
select user,host from user;
image.png
网友评论