主从复制与主主复制怎么自动切换:使用Keepalived
日常如何导出数据:mysqldump、xtrabackup
-  主库宕机解决方案(一主多从)登陆从库>show processlist\G; #cat /data/3306/data/master.info #cat /data/3307/data/master.iinfo 显示POS数值最大的将升级为主库 或者利用半同步功能,直接选择做了实时同步的从库升为主库。 授权同步用户和主库一样。 1)确保所有relay log更新完毕 每个从库执行:>stop slave io_thread;show processlist; 直到看到Has reda all realy log; 表示从库更新都执行完毕 2)登陆将要升为主的从库 #mysql -uroot -p'000' -S /data/3306/mysql.sock >stop slave; >retset master; >quit; 3)进入数据库目录,删除master.info relay_log.info #cd /data/3306/data #rm -f master.info relay-log.info 检查授权表 read-only等参数 4)提升为主库 #vim /data/3306/my.cnf 开启:log-bin = /data/3306/mysql-bin 注:存在log-slave-updates read-only等一定要注释 #/data/3306/mysql restart 5)若主库没宕机,则需要去主库拉取binlog补全从库。 6)其他从库操作 >stop slave; >change master to master_host = '192.168.11.6' ; >start slave; >show slave status\G; 7)修改程序配置文件从主库35指向32 一般访问数据库用域名,则可直接修改hosts解析。 
-  数据库读写慢原因1)在程序设计时没有索引 2)I/O吞吐量小 3)内存不足 4)查询数据量过大 
-  数据库同步延迟原因1)主从库间的网络延迟; 优化:提升端口带宽; 2)从库数量较多导致复制延迟; 优化:建议从库数量3-5个为宜; 3)主从两台机器负载不一致。由于主从复制是主数据库上启动一个I/O线程,从上启动一个I/O线程和一个SQL线程,当机器负载高时,可能导致其中的任何一个线程出现资源不足; 优化:提升硬件性能; 4)慢sql语句过多; 优化:sql执行时间较长,需优化sql语句; 5)主从复制设计问题; 优化:主从复制单线程,可通过多线程IO方案解决; 6)Max_allowed_packet设置不一致。主库设置其值大于从库,当较大的sql语句能在主库上执行,从库其值过小,无法执行; 优化:数值设置保持一致; 7)版本不一致; 优化:版本保持一致; 
-------------------------------------------------------------
转载请保留此段声明,且在文章页面明显位置给出原文链接,谢谢!
------------------------------------------------------------------------------
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!
------------------------------------------------------------------------------