一、教学标准1、了解mysql的优化,为什么要实现主从分离2、熟悉如何实现mysql主从分离3、熟练掌握mysql主从分离的配置4、熟练应用mysql主从分离下的php的开发二、mysql主从分离1、为什么要实现主从分离Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维和web开发的工程师都一定接触过。但在实际的生产环境中,由单台Mysql作为独立的数据库是完全不能满足实际需求的,无论是在安全性,高可用性以及高并发等各个方面。因此,一般来说都是通过主从复制(Master-Slave)的方式来同步数据,再通过读写分离(MySQL-Proxy)来提升数据库的并发负载能力这样的方案来进行部署与实施的。如下图所示:2、mysql主从分离配置步骤MySQL主从复制场景描述:主数据库服务器:,MySQL已经安装,并且无应用数据。从数据库服务器:,MySQL已经安装,并且无应用数据。-uroot-p-S/tmp/>GRANTREPLICATIONSLAVEON*.*to'rep1'@''identifiedby‘password’;查询主数据库状态Mysql>showmasterstatus;+------------------+----------+--------------+------------------+|File|Position|Binlog_Do_DB|Binlog_Ignore_DB|+------------------+----------+--------------+------------------+|mysql-|261|||+------------------+----------+--------------+------------------+记录下FILE及Position的值,在后面进行从服务器操作的时候需要用到。-id=1修改为server-id=10,并确保这个ID没有被别的MySQL服务所使用。启动mysql服务/data0/mysql/3306/mysqlstart通过命令行登录管理MySQL服务器/usr/local/webserver/mysql/bin/mysql-uroot-p-S/tmp/>changemastertomaster_host=’’,master_user=’root’,master_password=’12345678’,master_log_file=’mysql-’,master_log_pos=261;正确执行后启动Slave同步进程mysql>startslave;主从同步检查mysql>showslavestatus\G;==============================================***********************************Slave_IO_State:Master_Host::rep1Master_Port:3306Connect_Retry:60Master_Log_File:mysql-:415Relay_Log_File:localhost-relay-:561Relay_Master_Log_File:mysql-:YESSlave_SQL_Running:YESReplicate_Do_DB:……………省略若干……………Master_Server_Id:11rowinset()==============================================其中Slave_IO_Running与Slave_SQL_Running的值都必须为YES,才表明状态正常。如果主服务器已经存在应用数据,则在进行主从复制时,需要做以下处理:(1)主数据库进行锁表操作,不让数
大存储、大负载 来自淘豆网m.daumloan.com转载请标明出处.