容器化部署MySQL5.7数据库

数据持久化

复制代码
# 创建数据目录
data]# ls
mysql  mysql_conf  nginx

# 配置文件 中增加了字符集的配置
data]# cd mysql_conf/
[root@data-visualization-010050101050-security mysql_conf]# ls
my.cnf
[root@data-visualization-010050101050-security mysql_conf]# cat my.cnf 
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/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
skip-host-cache
skip-name-resolve
datadir=/var/lib/mysql
socket=/var/run/mysqld/mysqld.sock
secure-file-priv=/var/lib/mysql-files
user=mysql

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

#log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
# 增加配置文件
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci

[client]
socket=/var/run/mysqld/mysqld.sock
# 增加配置文件
default-character-set=utf8mb4

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

创建容器服务

复制代码
# 创建容器服务,挂载数据文件和配置文件,运行以下命令
docker run -d --restart=always -e LANG=C.UTF-8 -e TZ=Asia/Shanghai -v /data/mysql_conf/my.cnf:/etc/my.cnf -v /data/mysql:/var/lib/mysql --name=mysql_master -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123123 harbor.dazhenyun.cn/repo/mysql:5.7

验证新建的容器化MySQL服务

复制代码
# 进入容器 验证账号密码和字符集配置
bash-4.2# mysql -uroot -p123123
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.44 MySQL Community Server (GPL)

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> SHOW VARIABLES LIKE 'character_set_server';
+----------------------+---------+
| Variable_name        | Value   |
+----------------------+---------+
| character_set_server | utf8mb4 |
+----------------------+---------+
1 row in set (0.00 sec)

mysql> SHOW VARIABLES LIKE 'collation_server';
+------------------+--------------------+
| Variable_name    | Value              |
+------------------+--------------------+
| collation_server | utf8mb4_unicode_ci |
+------------------+--------------------+
1 row in set (0.00 sec)

mysql> exit
Bye
相关推荐
孙晓鹏life16 小时前
MySQL-Seconds_behind_master的精度误差
android·mysql·adb
ttwuai2 天前
GoFrame 连接 MySQL 报错排查:parseTime、时区和 utf8mb4 怎么配
数据库·mysql·adb
儒雅的大叔3 天前
MySQL数据库InnoDB数据恢复工具使用总结
数据库·mysql·adb
zhangjin11203 天前
解决adb -s 按Tab键不自动选择设备的问题
adb
逆向编程4 天前
MySQL 负载均衡完整入门实战教程
mysql·adb·负载均衡
红糖奶茶4 天前
MySQL 8.0的自增主键持久化特性
数据库·mysql·adb
我会尽全力 乐观而坚强5 天前
MySQL零基础入门(二)
数据库·mysql·adb
霸道流氓气质6 天前
Kiro 配置 MySQL MCP Server 通用教程
数据库·mysql·adb·mcp·kiro
运维大师6 天前
【安全与故障排查】03-【复盘】数据库被入侵:从发现到溯源全过程
数据库·安全·adb
Java小白笔记7 天前
MySQL中存储过程大表分批删除历史数据
android·mysql·adb