技术开发 频道

MYSQL主从复制高可用实施详解

  一、安装MYSQL 主从都要做

# tar zxvf mysql-5.0.45-linux-i686-icc-glibc23.tar.gz -C /usr/local/
# cd
/usr/local/
# mv mysql
-5.0.45-linux-i686-icc-glibc23 mysql
# cd mysql
# groupadd mysql
# useradd
-g mysql mysql
#passwd mysql
# .
/scripts/mysql_install_db --user=mysql
# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
# chmod
+x /etc/rc.d/init.d/mysqld
# chkconfig
--add mysqld
# /etc/rc.d/init.d/mysqld start

  把提供的MY.CNF文件拷贝主机的/etc/目录下,根据下面的提示修改所需要的参数

  把提供的MY.CNF文件拷贝从机的/etc/目录下,根据下面的提示修改所需要的参数

  主机和从机一样进行操作:vi /etc/my.cnf

  从机需要注意的是关闭server-id =1 打开server-id = 2;关闭log-bin=mysql-bin和binlog-do-db=fire9这两个参数;主机打开server-id =1 关闭server-id =2;打开log-bin=mysql-bin 和打开replicate-do-db=fire9 。(fire9指的是需要主从备份的数据库)

  mysql主从复制的配置

  在主机上操作

# mysql
Mysql
> create database fire9;  #从机也需要建立一样的数据库
Mysql
>set password for root@localhost = password (‘123456’); #给ROOT用户建立密码
Mysql
>flush privileges;
Mysql
>GRANT replication slave ON fire9.* TO slave@10.10.10.102 IDENTIFIED BY 'password';
# mysqldump
-uroot -p fire9 > fire9.sql
# scp fire9.sql root
@10.10.10.102:/tmp

  在从机上操作

  导入主机的数据库

  Mysql> create database fire9; #从机需要建立与主机一样的数据库

# mysql -uroot -p hipiao < /tmp/fire9.sql

   登入数据库操作

Mysql>set password for root@localhost = password (‘123456’); #给ROOT用户建立密码
Mysql
>flush privileges;
Mysql
> CHANGE MASTER TO
MASTER_HOST
= '10.10.10.101',
MASTER_PORT
= 3306,
MSTER_USER
= 'slave',---------------- 此帐号和密码是在主服务器上建立一个复制帐号
MASTER_PASSWORD = 'password',
MASTER_LOG_FILE
= 'mysql-bin.000001',------- 这个在主机上通过
Mysql>show master status;命令获得
MASTER_LOG_POS
= 98;---------------- 这个在主机上通过
Mysql>show master status;命令获得
Mysql
> Slave start;
Mysql
>show slave status\G;
检查一下Master_Log_File 和Master_Log_Pos是不是和主机的一样同时下面两个必须都为YES才对。
        Slave_IO_Running: Yes
        Slave_SQL_Running: Yes
0
相关文章