安装前必读:请确保 linux 服务器已安装 docker,若未安装可参照 Linux Centos7安装Docker详细步骤
目录
1.下载镜像
2.创建挂载目录
3.运行mysql
4.修改mysql密码以及可访问主机
docker pull mysql:8.0
可通过 docker images 查看镜像
docker images
mkdir -p /docker/mysql/conf
mkdir -p /docker/mysql/data
mkdir -p /docker/mysql/logs
在 conf 文件下创建 my.cnf 文件,内容如下
[client]
port = 3306
default-character-set = utf8mb4
[mysql]
port = 3306
default-character-set = utf8mb4
[mysqld]
# bind-address = 0.0.0.0
# port = 3306
max_connections=10000
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
# 设置时区和字符集
# default-time-zone='+8:00'
character-set-client-handshake=FALSE
init_connect='SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci'
gtid-mode=ON
enforce-gtid-consistency = ON
docker run -p 3306:3306 \
--privileged=true \
--name mysql \
--restart=always \
-e MYSQL_ROOT_PASSWORD=root \
-v /docker/mysql/conf/my.cnf:/etc/mysql/my.cnf \
-v /docker/mysql/data:/var/lib/mysql \
-v /docker/mysql/logs:/var/log/mysql \
-d mysql:8.0 \
--lower_case_table_names=1
#参数解释
--privileged:授权
-d:后台运行容器
-p:映射容器端口号和宿主机端口号
-e:环境参数,MYSQL_ROOT_PASSWORD设置root用户的密码
-v:挂载宿主机目录和 docker容器中的目录,前面是宿主机目录,后面是容器内部目录
--name:容器名称
--restart=always:开启自启动
--lower-case-table-names=1:mysql字母大小写忽略
执行完执行命令后,通过 docker ps 命令可查看正在运行的容器
docker ps
进入mysql容器
docker exec -it mysql bash
连接mysql
mysql -uroot -p'数据库密码'
使用mysql库
use mysql
修改访问主机以及密码等,设置为所有主机可访问
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '新密码';
刷新
flush privileges
连接mysql即可
over!