Docker 安装Mysql 5.7
本机系统使用(Ubuntu)
安装Mysql 5.7
安装Mysql 5.7
拉取镜像
sudo docker pull mysql:5.7
创建本地目录
# 创建配置文件目录
sudo mkdir -p /alidata/server/mysql/conf
# 创建数据文件目录
sudo mkdir -p /alidata/server/mysql/mysql
配置MySQL
sudo vim /alidata/server/mysql/conf/my.cnf
my.cnf 文件内容
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# 开启二进制日志(需要时可开启)
# log-bin=mysql-bin
# 设置默认时区
default-time-zone='+08:00'
# 调整最大连接数
max_connections=512
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Recommended in standard MySQL setup
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
运行MySQL
# 多行命令
sudo docker run -d \
-p 3306:3306 \
--name mysql \
--privileged=true \
-v /alidata/server/mysql/conf:/etc/mysql/conf.d \
-v /alidata/server/mysql/mysql:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:5.7
# 命令解释
sudo docker run -d \ #后台启动
-p 3306:3306 \ #配置映射端口
--name mysql \ #镜像名称
--privileged=true \ #设置读取配置文件权限
-v /alidata/server/mysql/conf:/etc/mysql/conf.d \ #挂载配置文件目录
-v /alidata/server/mysql/mysql:/var/lib/mysql \ #挂载数据文件目录
-e MYSQL_ROOT_PASSWORD=123456 \ #配置MySQL初始登录密码
mysql:5.7 #设置镜像版本
# 单行命令
sudo docker run -d -p 3306:3306 --name mysql --privileged=true -v /alidata/server/mysql/conf:/etc/mysql/conf.d -v /alidata/server/mysql/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
安装连接工具
# Ubuntu 安装连接工具
sudo apt install mysql-client-core-5.7
# 使用连接:
# -h 服务器host, 因为MySQL是安装在Docker里, 所以需要这个参数指定为远程连接地址.
sudo mysql -h127.0.0.1 -uroot -p123456
常用MySQL操作命令
# 显示数据库列表
show databases;
# 创建数据库
create database `BrandoDB` character set utf8 collate utf8_general_ci;
# 切换到相应数据库
use BrandoDB;
# 导入数据
source /alidata/server/BrandoDB.sql;