mysql 强制读主库

1、我们通过在sql的前面加一些特殊的标记,来表示强制走主库。如:/*master*/ SELECT * FROM user

2、在开启了事务的情况下,一个事务中的sql都会走主库

主库配置主要包括以下几个步骤: 1. 打开主库的配置文件my.cnf。可以使用以下命令找到my.cnf文件的位置: ```shell mysql --help | grep "Default options" ``` 2. 在my.cnf文件中,找到并修改以下参数: - 设置服务器ID(server-id):每个主库都需要一个唯一的服务器ID,可以设置为任意正整数。例如,将server-id设置为1: ```shell server-id = 1 ``` - 启用二进制日志(binlog):二进制日志记录了所有对数据库的更改操作,是实现主从复制的关键。确保以下参数被正确设置: ```shell log-bin = mysql-bin binlog-format = ROW ``` - 配置binlog文件的位置和大小限制: ```shell binlog-index = /var/lib/mysql/mysql-bin.index max_binlog_size = 100M ``` - 配置binlog的保留时间: ```shell expire_logs_days = 7 ``` - 配置binlog的格式: ```shell binlog_format = ROW ``` - 配置binlog的位置: ```shell log_bin = /var/log/mysql/mysql-bin.log ``` - 配置binlog的过滤规则(可选): ```shell binlog-do-db = database_name binlog-ignore-db = database_name ``` 3. 保存并关闭my.cnf文件。 4. 重启MySQL服务以使配置生效: ```shell service mysql restart ``` 5. 登录主库MySQL,并创建用于复制的用户: ```shell mysql -u root -p GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'slave_ip' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; ``` 其中,'replication_user'是用于复制的用户名,'slave_ip'是从库的IP地址,'password'是密码。 6. 查看主库状态,获取binlog文件名和位置: ```shell SHOW MASTER STATUS; ``` 记下File和Position的值,将在配置从库时使用。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值