wordpress博客站模板下载,做网站的技术要求高吗,dota2海涛做的网站,中国商务网官网首先要明白为什么要用 mysql 的主从复制#xff1a;1–在从服务器可以执行查询工作 (即我们常说的读功能)#xff0c;降低主服务器压力#xff1b;(主库写#xff0c;从库读#xff0c;降压)2–在从主服务器进行备份#xff0c;避免备份期间影响主服务器服务#xff1b;…首先要明白为什么要用 mysql 的主从复制1–在从服务器可以执行查询工作 (即我们常说的读功能)降低主服务器压力(主库写从库读降压)2–在从主服务器进行备份避免备份期间影响主服务器服务(确保数据安全)3–当主服务器出现问题时可以切换到从服务器。(提升性能)来说一下主从复制的实现原理mysql 复制过程分为三步(如上图所示)1.mster 将改变记录到二进制日志 (binary log) 当中 这些记录过程叫做二进制日志事件 binary log events;2.slave 将 master 的 binary log events 拷贝到它的中继日志 (relay log) 当中3.slave 重做中继日志中的事件 将改变应用到自己的数据库当中 mysql 复制是异步的且串行化的 3.slave 重做中继日志中的事件 将改变应用到自己的数据库当中 mysql 复制是异步的且串行化的复制的最大问题从主机复制数据达到从机可能会有延时都说 master 主机和 slave 从机的 mysql 版本号要一致 我就没一致master 主机上是 5.6 slave 从机上是 5.7 一样搞拿过来一台服务器你不得先找 mysql 吗mysql 在哪里 配置文件在哪里执行命令which mysql/usr/bin/mysql --verbose --help | grep -A 1 Default options结果如图所示先去找 /etc/my.cnf 再去找 /etc/mysql/my.cnf 然后就是后边我的是在 /etc/my.cnf修改 my.cnf 配置文件如下重启 mysql 服务器执行命令service mysqld restart;解释server-id1 // 复制组中的每台服务器都要配置唯一的 Server ID取值范围是 1 到 (232)−1你自己决定取值log-binmaster-bin // 日志文件名以 “master-bin” 作为前缀binlog-do-dbfinance_online // 要同步的 finance_online 数据库如要同步多个数据库就多加几个 replicate-db-db 数据库名binlog-ignore-dbmysql // 要忽略的数据库read-only // 主机 读写都可以 (必须)登录上 mysql 然后执行show master status;结果如下记住里面的 File 和 Position 的值 待会会用到在主数据中创建一个同步账号(可不创建使用现有的)如果仅仅为了主从复制创建账号只需要授予 REPLICATION SLAVE 权限创建一个账号账号zcfz 密码 123456这个账号是专门用来搞主从复制用的哈上述 主服务器配置完成slave 从服务器配置开始重启 mysql 服务器service mysqld restart;进入到 slave 从机的 mysql 命令行执行命令stop slave;CHANGE MASTER TO MASTER_HOST10.10.20.120,MASTER_USERzcfz,MASTER_PASSWORD123456,MASTER_LOG_FILEmaster-bin.000005,MASTER_LOG_POS3878614;解释MASTER_HOST 就是 master 主服务器的 ipMASTER_USER 就是 master 主服务器里面的专门复制复制的用户 zcfzMASTER_PASSWORD 就是 zcfz 账户的密码MASTER_LOG_FILE 就是我们上边让您保存的 file 对应的值MASTER_LOG_POS 就是我们上边让您保存的 Position 的值然后执行命令show slave status\G结果如图所示wating for master to send evnet 说明已经在待命状态了另外必须注意的是 slave_io_runing 以及 slave_sql_runing 都同时必须为 yes 才行截止到此刻说明主从复制的道路打通了然后执行命令start slave;验证阶段执行命令创建数据库CREATE DATABASE finance_online DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;这个时候 master 和 slave 上都有了数据库然后你再导入数据到 master 主机上的 finance_online 那么 slave 从机上也就有了然后你再导入数据到 master 主机上的 finance_online 那么 slave 从机上也就有了另外如果你不想复制这个库了 想换一个那么去修改 master 主机上的 my.cnf 当中的 binlog-do-dbtprbac 然后重启 mysql 服务然后 show master status 看看 file 和 positon然后再去 linux 服务器上停止 slave 在 mysql 当中执行 stop slave;然后再执行CHANGE MASTER TO MASTER_HOST’10.10.20.120’,MASTER_USER’zcfz’,MASTER_PASSWORD’123456’,MASTER_LOG_FILE‘你看到的 file’,MASTER_LOG_POS 你看到的 positon;然后在 start slave;就完事了这样就会主从复制你想要复制的数据库了