Heim >Datenbank >MySQL-Tutorial >Mysql的主从服务器架构配置_MySQL

Mysql的主从服务器架构配置_MySQL

WBOY
WBOYOriginal
2016-06-01 13:45:14897Durchsuche

bitsCN.com

所谓主从Mysql服务器架构,就是在主服务器上的操作同时也拷贝一份到从服务器上来。
接下来我使用两台机器做一下这个过程,
复制的作用:
  1.数据分部
  2.实现读的负载均衡
  3.备份(本身不能备份,但是能提供一个备份机)
  4.高可用和故障转移的能力
  5.测试Mysql的升级 
复制的类型:
a.基于语句的复制
b.基于行的复制
c.混合型的复制(a和b的结合)
服务器的地址规划
主服务器IP:192.168.1.108
从服务器IP:192.168.1.110
实验拓扑结构:
master_mysql-----------------client_mysql
1.安装Mysql
#mkdir -vp /mydata/data
#groupadd -g 3306 mysql     
#useradd -g mysql -s /sbin/nologin -M -u 3306 mysql     
#chown -R  mysql:mysql  /www/mydata/     
# tar x mysql-5.5.15-linux2.6-i686.tar.gz  -C  /usr/local     
#ln -vs /usr/local/mysql-5.5.15-linux2.6-i686  /usr/local/mysql     
#cd /usr/local/mysql     
#chown -R mysql:mysql .     
#scripts/mysql_install_db --user=mysql --datadir=/mydata/data
#chown -R root .     
#cp support-files/mysql.server /etc/init.d/mysqld      
#chkconfig --add mysqld     
#cp support-files/my-large.cnf /etc/my.cnf    
#vim /etc/my.cnf         
添加:datadir=/mydata/data     
service mysqld start     
指定mysql二进制的文件:       
#export PATH=$PATH:/usr/local/mysql/bin(临时)       
#vim /etc/profile        
添加PATH=$PATH:/usr/local/mysql/bin也行(永久)     
指定lib文件      
#vim /etc/ld.so.conf.d/mysql.conf         
添加: /usr/local/mysql/lib      
ldconfig 同步一下        
#ldconfig -v | grep mysql      
头文件:         
#ln -sv /usr/local/mysql/include /usr/include/mysql      
帮助信息:         
#vim /etc/man.config            
添加:  MANPATH /usr/local/mysql/man   
这下配置需要在两个服务器上都需要进行配置的
2.接下来开始真正的主从mysql服务器的配置了
主服务器的配置如下
#vim /etc/my.cnf  添加如下信息
log-bin=mysql-bin
log-bin-index=mysql-bin.index
binlog-format=maxed
server id = 1
修改完成后保存,重启Mysql
#service mysqld restart
然后登录到Mysql对192.168.1.110主机授权
#mysql
mysql> GRANT REPLICATION CLIENT,REPLICATION SLAVE ON *.* TO repl@'192.168.1.110' IDENTIFIED BY 'redhat';
mysql> FLUSH PRIVILEGES;
3.从文件配置
#vim /etc/my.cnf
注释掉log-bin=mysql-bin,binlog-format=maxed
添加relay-log=relay-bin.index,relay-log=relay-bin,replicate-ignore-db =mysql
修改server-id = 2
保存配置文件后重新启动Mysql
#service mysqld restart
#mysql
mysql> CHANGE MASTER TO MASTER_HOST='192.168.1.108',MASTER_USER='repl',MASTER_PASSWORD='redhat';
mysql> START SLAVE;
mysql> SHOW SLAVE STATUS/G;查看从服务器的运行状态
如果出现如下信息,可以确定信息已经从主服务器上复制到了从服务器

Mysql的主从服务器架构配置_MySQL

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| luowei             |
| mysql              |
| performance_schema |
| test               |
+--------------------+
mysql> SELECT * FROM st;
+----+------+
| ID | Name |
+----+------+
|  1 | a    |
|  2 | b    |
|  3 | c    |
|  5 | E    |
+----+------+
这个时候主从服务器上的数据库就同步了,实验成功!!
本文出自 “IT梦-齐-分享”

bitsCN.com
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn