docker 安装mysql
安装docker
curl -sSL https://get.daocloud.io/docker | sh
systemctl start docker 启动docker
systemctl status docker 查看docker 状态
docker images 查看本地镜像
docker pull mysql:8.0.23 拉取镜像
3.端口映射及挂载
sudo docker run -p 3306:3306 --name mysql \
-v /usr/local/docker/mysql/mysql-files:/var/lib/mysql-files \
-v /usr/local/docker/mysql/conf:/etc/mysql \
-v /usr/local/docker/mysql/logs:/var/log/mysql \
-v /usr/local/docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=1234567\
-d mysql:8.0.23
sudo docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=1234567 -d mysql:8.0.23
4.进入mysql容器内部(退出容器用exit)
docker exec -it mysql /bin/bash
5.登陆(默认密码1234567),一定要先进入mysql容器。
mysql -uroot -p1234567
6.设置mysql开机自启动(可选)
docker update mysql --restart=always
7.在mysql容器内部切换到mysql数据库
use mysql
8.查看用户信息
select host,user from user
9.修改用户密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root123';
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root123';
查看防火墙
systemctl status firewalld
打开防火墙
systemctl start firewalld.service
防火墙添加3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
重启防火墙
firewall-cmd --reload
查看防火墙列表
firewall-cmd --list-port
如果用navicat远程连接出现以下异常,则需要修改该用户的加密方式
登录数据库
mysql -uroot -p1234567
查看各用户加密方式
select host,user,plugin from mysql.user;
更改用户加密方式(回车,即可修改成功,注意这里最后的1234567是你设置的root账户的密码,我设置的是“1234567”。)
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '1234567';
继续查看用户加密方式(可正常使用mavicat连接)