如何在一台机器上运行两个MySQL实例

本文详细介绍了如何通过配置两个不同的my.cnf文件来部署两个独立的MySQL实例,包括日志设置、路径配置、初始化数据库、启动及关闭命令等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、准备两个不同的my.cnf文件(请读者自己比较文件里配置项的一些区别,并且准备好里面配置的一些文件的路径和访问权限)

实例一的my.cnf:

[mysqld]
#一般日志和慢查询日志的文件路径
general_log_file=/usr/local/mysqlinstance1/log/general.log
slow_query_log_file=/usr/local/mysqlinstance1/log/slow-query.log
slow-query-log=1
general-log=1
#错误日志路径
log-error=/usr/local/mysqlinstance1/log/mysql-error
#启用二进制日志
log_bin = /usr/local/mysqlinstance1/log/binlog/bin-log
max_binlog_size=100M
#写日志时使用sync的模式,强制操作系统写进磁盘,这样不受操作系统文件的缓存的影响,更安全,但是性能会有所下降
sync_binlog=1
#默认的binlog的记录方式,竟然是基于语句的。。。
binlog-format=row
#打开管理操作SQL的慢查询记录
log_slow_admin_statements=ON
#慢查询超时时间,单位为秒
long_query_time=3
#查询的行数必须大于该值才会记录
min_examined_row_limit=0
#打开非索引查询的记录
log_queries_not_using_indexes=ON
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

port=3307
socket=/usr/local/mysqlinstance1/mysql.sock
tmpdir=/usr/local/mysqlinstance1/tmpdir
datadir=/usr/local/mysqlinstance1/data
pid_file=/usr/local/mysqlinstance1/mysql.pid

实例二的my.cnf配置:

[mysqld]
#一般日志和慢查询日志的文件路径
general_log_file=/usr/local/mysqlinstance2/log/general.log
slow_query_log_file=/usr/local/mysqlinstance2/log/slow-query.log
slow-query-log=1
general-log=1
#错误日志路径
log-error=/usr/local/mysqlinstance2/log/mysql-error
#启用二进制日志
log_bin = /usr/local/mysqlinstance2/log/binlog/bin-log
max_binlog_size=100M
#写日志时使用sync的模式,强制操作系统写进磁盘,这样不受操作系统文件的缓存的影响,更安全,但是性能会有所下降
sync_binlog=1
#默认的binlog的记录方式,竟然是基于语句的。。。
binlog-format=row
#打开管理操作SQL的慢查询记录
log_slow_admin_statements=ON
#慢查询超时时间,单位为秒
long_query_time=3
#查询的行数必须大于该值才会记录
min_examined_row_limit=0
#打开非索引查询的记录
log_queries_not_using_indexes=ON
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

port=3308
socket=/usr/local/mysqlinstance2/mysql.sock
tmpdir=/usr/local/mysqlinstance2/tmpdir
datadir=/usr/local/mysqlinstance2/data
pid_file=/usr/local/mysqlinstance2/mysql.pid


2、使用mysql_install_db脚本初始化数据库

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysqlinstance1/data

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysqlinstance2/data

(其中,/usr/local/mysql/ 就是你的mysql的安装路径)


3、启动数据库

mysqld_safe --defaults-file=/usr/local/mysqlinstance1/config/my.cnf &

mysqld_safe --defaults-file=/usr/local/mysqlinstance2/config/my.cnf &


4、关闭数据库

mysqladmin -uroot -S/usr/local/mysqlinstance1/mysql.sock shutdown

mysqladmin -uroot -S/usr/local/mysqlinstance2/mysql.sock shutdown


收工。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值