【终篇-------MySQL主从】主从是什么:
一台服务器中装一个MySQL不能达到高可用的效果。
如果老王半夜看片把电脑搞挂了,那就完了,没数据库可以用了。。
怎么办呢,我们准备至少两台数据库,使用两个MySQL,拿其中一个进行备份。防止数据丢失。
主从 master and slave 主从大概就是主服务器的所有改变都能及时在从数据库进行备份,是不是有点像SM,em…没有啦。开玩笑了。
我们让用户写就往主数据库里面写。
我们让用户读就从从数据库里面读。
数据要备份-我们要主从
为了更好的响应-我们读写分离
负载均衡----------指挥官
-------------------------------------------------------------------- 搭建主从
文章图片
Mysql服务器之间的主从同步是基于二进制日志机制,主服务器使用二进制日志来记录数据库的变动情况,从服务器通过读取和执行该日志文件来保持和主服务器的数据一致。
在使用二进制日志时,主服务器的所有操作都会被记录下来,然后从服务器会接收到该日志的一个副本。从服务器可以指定执行该日志中的哪一类事件(譬如只插入数据或者只更新数据),默认会执行日志中的所有语句。
每一个从服务器会记录关于二进制日志的信息:文件名和已经处理过的语句,这样意味着不同的从服务器可以分别执行同一个二进制日志的不同部分,并且从服务器可以随时连接或者中断和服务器的连接。
主服务器和每一个从服务器都必须配置一个唯一的ID号(在my.cnf文件的[mysqld]模块下有一个server-id配置项),另外,每一个从服务器还需要通过CHANGE MASTER TO语句来配置它要连接的主服务器的ip地址,日志文件名称和该日志里面的位置(这些信息存储在主服务器的数据库里)
-------------------------------------------------------- 配置主从同步的基本步骤
有很多种配置主从同步的方法,可以总结为如下的步骤:
在主服务器上,必须开启二进制日志机制和配置一个独立的ID
在每一个从服务器上,配置一个唯一的ID,创建一个用来专门复制主服务器数据的账号
在开始复制进程前,在主服务器上记录二进制文件的位置信息
如果在开始复制之前,数据库中已经有数据,就必须先创建一个数据快照(可以使用mysqldump导出数据库,或者直接复制数据文件)
配置从服务器要连接的主服务器的IP地址和登陆授权,二进制日志文件名和位置
---------------------------------------------------------- mysqldump -uroot -p jing_dong > jd.sql ###数据库备份
mysql -uroot -p 新数据库 < jd.sql ###将数据备份到新的数据库里 < 重定向输入符号
保持两个数据库数据一直
接下来配置主服务器
接下来配置从服务器
最后~我懒了,搜帖子看吧,只要配置就行了。
好了。一眨眼之间又快十点了。。。时间过的太快了。。。明天开始学习数据结构并且刷题。