Docker配置MySQL

使用Docker配置Mysql

  • 1.下载MySQL

docker pull mysql:5.7

  • 2.使用docker运行mysql

docker run -d -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql:5.7

  • 3.配置MySQL四步曲

进入容器内:docker exec -it 容器ID
进入到MySQL:mysql -uroot "username" -p "password"
允许名为root的用户远程链接:GRANT ALL ON . TO 'root'@'%'
或允许名为root密码为1-6的用户远程连接、root后的@可以跟你本机的ip地址,不指定为所有:grant all privileges on . to 'root'@'%' identified by '123456' with grant option;
修改加密规则:ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
更改root密码:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
刷新权限:flush privileges;
查看用户信息:
select host,user,plugin,authentication_string from mysql.user;
或者折合
docker run -d -p 3336:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root123 --name mysql01 mysql:5.7

[root@xiaozhang1999 ~]# docker run -d -p 3336:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root123 --name mysql01 mysql:5.7
ffef7728881fd32afb0afe927893e7b7d7442ab40625a807695bc2d7fd1bb05c
[root@xiaozhang1999 ~]# cd /home
[root@xiaozhang1999 home]# ll
total 0
drwxr-xr-x 2 root root 37 Jun 24 15:27 ceshi
drwxr-xr-x 4 root root 30 Jun 25 14:55 mysql
[root@xiaozhang1999 home]# cd mysql
[root@xiaozhang1999 mysql]# ll
total 0
drwxr-xr-x 2 root             root   6 Jun 25 14:55 conf
drwxr-xr-x 5 systemd-coredump root 328 Jun 25 14:55 data
[root@xiaozhang1999 mysql]# cd data
[root@xiaozhang1999 data]# ll
total 188484
-rw-r----- 1 systemd-coredump input       56 Jun 25 14:55 auto.cnf
-rw------- 1 systemd-coredump input     1680 Jun 25 14:55 ca-key.pem
-rw-r--r-- 1 systemd-coredump input     1112 Jun 25 14:55 ca.pem
-rw-r--r-- 1 systemd-coredump input     1112 Jun 25 14:55 client-cert.pem
-rw------- 1 systemd-coredump input     1680 Jun 25 14:55 client-key.pem
-rw-r----- 1 systemd-coredump input     1359 Jun 25 14:55 ib_buffer_pool
-rw-r----- 1 systemd-coredump input 79691776 Jun 25 14:55 ibdata1
-rw-r----- 1 systemd-coredump input 50331648 Jun 25 14:55 ib_logfile0
-rw-r----- 1 systemd-coredump input 50331648 Jun 25 14:55 ib_logfile1
-rw-r----- 1 systemd-coredump input 12582912 Jun 25 14:55 ibtmp1
drwxr-x--- 2 systemd-coredump input     4096 Jun 25 14:55 mysql
drwxr-x--- 2 systemd-coredump input     8192 Jun 25 14:55 performance_schema
-rw------- 1 systemd-coredump input     1680 Jun 25 14:55 private_key.pem
-rw-r--r-- 1 systemd-coredump input      452 Jun 25 14:55 public_key.pem
-rw-r--r-- 1 systemd-coredump input     1112 Jun 25 14:55 server-cert.pem
-rw------- 1 systemd-coredump input     1676 Jun 25 14:55 server-key.pem
drwxr-x--- 2 systemd-coredump input     8192 Jun 25 14:55 sys
[root@xiaozhang1999 data]# ls
auto.cnf  ca-key.pem  ca.pem  client-cert.pem  client-key.pem  ib_buffer_pool  ibdata1  ib_logfile0  ib_logfile1  ibtmp1  kukuku  mysql  performance_schema  private_key.pem  public_key.pem  server-cert.pem  server-key.pem  sys
  • 4.启动成功之后在本地Native验证持久化

  • 5.在本地新建个数据库后去Liunx下查看

  • 注意:防火墙端口设置

VM虚拟机下:
查看firewalld状态,如果防火墙未工作则需要先打开。
systemctl status firewalld//查看状态
systemctl start firewalld//打开
打开firewalld后,设置开放端口
// --permanent 永久生效,没有此参数重启后失效
firewall-cmd --zone=public --add-port=3306/tcp --permanent
之后重新载入设置
systemctl start firewalld
使用如下命令查看3306号端口
firewall-cmd --zone=public --query-port=3306/tcp
阿里云服务器下:安全组设置配置上述用到的开放端口

posted @ 2021-07-12 17:44  LanceYa  阅读(1008)  评论(0)    收藏  举报