在Docker中安装并修改MySQL中的 my.cnf 配置文件

前言

前期经过MySQL主从复制之后,发现数据库的读写非常慢,而且经常发生MySQL连接数过小,导致整个数据库崩溃的情况。通过修改MySQL中的 my.cnf 配置文件参数,以达到MySQL关系型数据库最大性能的合理利用。
本文共分为三个方面进行讲述:

一、Docker安装MySQL

查看mysql镜像
	sudo docker search mysql
	
拉取mysql
	sudo docker pull mysql
#默认最新版(可自定义5.7)
	
创建容器,并测试,参考链接
 	sudo docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql

二、连接MySQL

docker中进入mysql容器的方法
	1)sudo docker exec -it 容器名称 bash
	
	2)mysql -uroot -p
	
	3)use mysql
	
	4)select host, user from user;查看root用户
	
	判断root是否存在一个,如果有两个先删除delete from user where host="%" and user="root";
	
	再修改 update user set host = '%' where user = 'root';
	
	刷新权限 FLUSH PRIVILEGES;
	
	授予远程权限 alter user 'root'@'%' identified with mysql_native_password by '
官方MySQL Docker镜像是一个非常方便的工具,可以快速地部署MySQL数据库。默认情况下,官方MySQL Docker镜像包含的MySQL服务器配置是在启动容器时使用环境变量进行动态调整的。这通常能够满足大多数情况,但在有些情况下,我们可能需要对MySQL服务器进行更加详细的配置,这时我们就需要使用自定义的配置文件my.cnf。 自定义配置文件my.cnf可以包含MySQL服务器的各种配置选项,例如缓存、日志、安全、性能调优等。我们可以根据自己的需求定义这些选项,并将my.cnf复制到Docker容器。在启动容器时,我们使用-v选项将我们自定义的my.cnf文件映射到容器内的/etc/mysql/my.cnf路径,覆盖默认配置文件。 一个简单的例子,在本地新建一个my.cnf文件,并添加以下代码: [mysqld] innodb_buffer_pool_size=2G 然后使用docker run命令启动MySQL容器: docker run --name some-mysql -v /path/to/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag 请确保/my.cnf文件所在的主机路径(path/to/my.cnf)已经存在,否则容器将无法启动。 以上就是使用自定义配置文件my.cnf的基础内容。但需要注意的是,在自定义配置文件,我们不应该使用与容器所在主机或网络环境不一致的IP地址或主机名,否则可能导致MySQL服务器无法正常运行。最好使用通用的IP地址(0.0.0.0)或者localhost。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值