MySql主从同步配置过程
来源:互联网 发布:cf活动领枪软件 编辑:程序博客网 时间:2024/06/07 12:59
主从的作用
1.可以当成一个备份来认识
2.用来实现读写分离,缓解数据库的压力
3.实现服务器的负载均衡,可以数据备份,保证数据库稳定。
4.辅助项目稳定,有一个库不能用,其他库依然可以支持项目访问。
同步复制
所谓的同步复制,意思是master的变化,必须等待slave-1,slave-2,...,slave-n完成后才能返回。
这样,显然不可取,也不是MYSQL复制的默认设置。比如,在WEB前端页面上,用户增加了条记录,需要等待很长时间。
异步复制
如同AJAX请求一样。master只需要完成自己的数据库操作即可。至于slaves是否收到二进制日志,是否完成操作,不用关心。MYSQL的默认设置。
半同步复制
master只保证slaves中的一个操作成功,就返回,其他slave不管。
这个功能,是由google为MYSQL引入的。
服务的安装
安装服务
mysqld -install 服务名--defaults-file="D:\Program Files\mysql-s\mysql-5.7.17-02\my.ini"
初始化
mysqld --initialize-insecure --user=服务名
启动服务
net start 服务名
服务的卸载步骤:
停止服务:net stop myMaster(服务名)
卸载服务:mysqld remove myMaster(服务名)
My.ini主要的配置
port = 3307 #mysql数据库的端口号,保证唯一性
server_id =11 #mysql数据库的服务id , 保证唯一性
log_bin=mysql-bin #进行日志记录
数据库的配置命令:
授权
1.GRANTREPLICATION SLAVE ON *.* TO 'mysql'@'127.0.0.1'IDENTIFIED BY '1234';
输出:QueryOK, 0 rows affected 查询ok,0行受影响
查看主数据库状态
2.show master STATUS;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB |Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000064| 907 | | |
+------------------+----------+--------------+------------------+
1 row in set
从库连接成功,停止从库复制工作
3.stop slave;
输出:Query OK, 0 rows affected 查询ok
配置主库信息
4.change master to
master_host='127.0.0.1',#主服务器IP
master_user='root', #主服务器访问从服务器的用户,即上述第三条第2 小条第2子条所述帐号
MASTER_PORT=3007,
master_password='', #主服务器访问从的密码,即上述第三条第2小条第2 子条所述密码
master_log_file='mysql-bin.000002', #主服务器起始的binlog文件 名,即图2的file
Master_log_pos=358; #主服务器binlog起始位置,即图2的postion
开启从库复制工作
5.start slave;
查看从库状态
6.show slave status; 出现下图状态的话,恭喜你,配置成功
自己配置,简单粗暴,主从的作用不在配置,当你应用到项目里,加上多数据源切换,效果会很明显
- MySql主从同步配置过程
- MYSQL主从库同步配置过程
- MYSQL 主从同步配置
- Mysql 主从同步配置
- mysql主从同步配置
- mysql主从同步配置
- mysql主从同步配置
- mysql主从同步配置
- mysql主从同步配置
- Mysql主从同步配置
- MySQL主从同步配置
- mysql主从同步配置
- mysql主从同步配置
- mysql主从同步配置
- mysql 配置主从同步
- mysql 主从同步配置
- MySQL 主从同步配置
- mysql 主从同步配置
- 快速入门正则表达式
- Java中equals和==的区别
- 用ngrok将内网映射到公网上
- eclipse设置tab为4个空格
- 函数
- MySql主从同步配置过程
- c++设计模式之工厂模式
- 动态规划之线性动规钢条切割问题
- ros中2D_Slam说明: turtlebot+kinect改写成turtlebot+laser(hokuyo)
- IOS下Libevent编译步骤,及引入Xcode备忘
- Intelij导入maven项目并部署到tomcat
- java动态代理
- 阅读源代码的感想
- java8新特性 Lambda表达式详解