类似于从一台服务器拷贝数据库到另一台服务器上,但它是通过定义master 和slave的关系去实时地保证两个数据库的完全同步,这个功能在mysql的3.23版中开始出现。
master/slave模式备份
testenv:
master:mysql-4.1.12 on redhat9.0 ip:192.168. 0.217
slave: mysql-4.1.12 on redhat9.0 ip:192.168.10.244
1、编译,安装
1. #tar –zxvf mysql-4.1.12.tar.gz
2. #cd mysql-4.1.12
3. .#/configure –prefix=/var/eyou/mysql
4. #make
5. #make install
6. #chown –r root /var/eyou/mysql
7. # chown –r mysql /var/eyou/mysql/var
8. #chgrp –r mysql /var/eyou/mysql
9. #scripts/mysql_install_db
10. #cp support-files/my-medium.cnf /etc/my.cnf
2、master 机器设置权限,赋予slave机器file及replication slave权利,并打包要同步的数据库结构。
master# pwd
/var/eyou/mysql/bin
master#./mysql –u root –p
enter password:
welcome to the mysql monitor. commands end with ; or \g.
your mysql connection id is 2 to server version: 4.1.12
type 'help;' or '\h' for help. type '\c' to clear the buffer.
mysql> grant file on *.* to rep@192.168.0.244 identified by ‘eyou’;
mysql> grant replication slave on *.* to rep@192.168.0.244 identified by ‘eyou’;
赋予192.168.10.244也就是slave 机器有file权限, 这个4.1.12版对replication的权限好像做了调整,只赋予slave机器有file权限还不行,还要给它replication slave的权限才可以。
然后打包要复制的数据库
master# cd var
master# tar czvf reptest.tar.gz reptest
这样,我们得到一个reptest数据库的打包文件reptest.tar.gz
2设置主服务器master的my.cnf,启动mysql服务
master# vi /etc/my.cnf
在[mysqld]添加或修改以下的
[mysqld]
log-bin #打开logbin选项以能写到slave的 i/o线程;
server-id=1 #表示是本机的序号为1,一般来讲就是master的意思.
sql-bin-update-same
binlog-do-db= reptest #表示同步reptest数据库;
然后把master主服务器的mysql重启。
master# /var/eyou/mysql/bin/mysqladmin –u root –p shutdown
master# /var/eyou/mysql/bin/safe_mysqld --user=mysql &
3、建立slave数据库
刚才在master中打包了reptest.tar.gz,它的作用就是要在slave恢复成一样的数据库。先把master 的reptest.tar.gz文件传到slave机器中去。然后
slave# tar zxvf reptest.tar.gz -c /var/eyou/mysql/var/
4、修改slave服务器的my.cnf
slave# vi /etc/my.cnf
在[mysqld]添加或修改以下的
master-host=192.168.10.217
master-user=rep
master-password=eyou
master-port=3306
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器