docker安装mysql8.0

养成良好的记录习惯

时间:2019年10月12日
作者:黄黄
邮箱:[email protected](可指出问题相互交流)

拉取mysql镜像

(默认最新8.0以上)

docker pull mysql
docker pull mysql:版本号

创建需要挂载的目录

mkdir -p ~/Project/Docker/mysql/data ~/Project/Docker/mysql/logs ~/Project/Docker/mysql/conf

创建配置文件

注:挂载配置文件必须先在宿主机创建 .cnf自定义配置文件,不然无法启动

cd Project/Docker/mysql/conf
vi my.cnf

加入自定义配置

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
#不区分大小写配置
lower_case_table_names=1

启动容器

docker run \
-d -p 3306:3306 \
--name zzw-mysql \
-v /Project/Docker/mysql/conf:/etc/mysql/conf.d \
-v /Project/Docker/mysql/data:/var/lib/mysql \
-v /Project/Docker/mysql/logs:/logs \
-e MYSQL_ROOT_PASSWORD=root初始密码\
--privileged=true \
--restart=always \
mysql
  • -d 后台运行
  • -v 挂在对应数据到容器中
  • -e 指定参数 举例:
    //-e MYSQL_USER=“新用户名”
    //-e MYSQL_PASSWORD=“新密码” \
  • –privileged=true linux安全授权
  • –restart 服务异常后自动启动

登陆mysql

docker exec -it zzw-mysql bash 
mysql -u root -p

创建用户远程访问

CREATE USER 'name'@'%' IDENTIFIED WITH mysql_native_password BY 'xxxx';

赋予全部库的全部权限给新建用户

GRANT ALL PRIVILEGES ON *.* TO '新用户名'@'%';

##部署完成

你可能感兴趣的:(docker,数据库,docker,mysql8.0,mysql,java)