1、加载msyql 镜像 最好是指定版本,当前指定为 5.7.9
配置容器的时候需要指定 mysql root 的密码 需要在环境添加参数才能启动:
MYSQL_ROOT_PASSWORD=123456
安装 net-tools 与 vim 工具
apt-get update
apt-get install net-tools
apt-get install vim
2、登陆mysql 配置远程管理
#登陆mysql
mysql -u root -p
#输入密码登陆成功后,配置远程管理
GRANT ALL ON *.* TO 'root'@'%';
mysql> use mysql;
mysql> GRANT ALL ON *.* TO root@'%' IDENTIFIED BY '远程登录密码' WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES;
flush privileges;
3、修改数据库路径
/ 默认目录如下
├─ /var/lib/mysql 日志文件,数据库文件
├─ /var/log/mysql/error.log 错误日志
/ 最终需要修改的目录
├─ /home/data 日志文件,数据库文件
├─ /home/logs/error.log 错误日志
配置目录权限
mkdir -p /home/data
mkdir -p /home/logs
chown -R mysql:mysql /home/data
chown -R mysql:mysql /home/logs
chmod -R 755 /home
chmod -R 755 /home/data
chmod -R 755 /home/logs
#注意 如果上面没有配置home的访问权限,修改了配置后容器是没办法启动的。
#检查访问权限 切换成mysql用户
su - mysql
#在mysql用户里面访问 /home/data目录
cd /home/data
#如果提示 can’t cd to /home/data 则需要返回root用户配置目录权限
chmod -R 755 /home
复制原有数据库文件到新的路径上
cp -r /var/lib/mysql/* /home/data
修改配置文件 /etc/mysql/my.cnf
vim /etc/mysql/my.cnf
修改执行文件里面 /etc/init.d/mysql 的datadir 目录
vim /etc/init.d/mysql
统一数据库 编码配置,解决备份与导入导出中文乱码问题。
创建数据库规范: 字符集:utf8mb4 排序规则:utf8mb4_general_ci
mysql 配置为 使用 utf8mb4的编码
安装好后默认配置
show variables like 'char%';
需要修改配置文件 /etc/mysql/my.cnf
添加:
# client
character_set_client=utf8mb4
character_set_connection=utf8mb4
#mysqld
character_set_server=utf8mb4
优化
group_concat 有长度限制!!!!默认1024
需要修改配置文件 /etc/mysql/my.cnf
#mysqld 最后面添加
group_concat_max_len = 102400
重启生效