年末整理六 主从热备

########## http://article.phpfans.net/?do=Show&id=MjEzMjk4 #####################

 
在高负载的情况下,独立 MySQL 服务器的负荷压力比较大,
这时候我们可以建立主从服务器(一个 master, 多个 slave),
让主服务器负责写操作,从服务器负责读请求,
也算是"负载均衡"吧.
 
具体配置:(由于PHP开发的需要,我选择了Windows)
1、正常安装 MySQL 服务器,假定我们选择的安装目录是 c:\mysql;并运行实例配置向导,进行偏向设定。
2、拷贝mysql安装为mysql_backup, 即:c:\mysql_backup;
3、卸载刚才进行的mysql安装(因为有windows注册表的缘故,如果没有卸载即不可以再次进行安装),并手动删除未卸载完全的mysql目录。
4、把mysql_backup从命名两次,即c:\mysql和c:\mysql2,他们就是我们要配置的主从服务器,当然可以设置更多的从服务器。现在它们的配置完全一样。
5、对于 mysql2目录,我们需要打开 my.ini 文件进行一些设置。
  a:分别修改 basedir 和 datadir 为对应的目录(basedir="C:/mysql2/", datadir="C:/mysql2/Data/")
  b:修改 [mysqld] section 下的监听端口 即 port=3307
 
现在两台 MySQL 服务器是可以分别运行的。
但是我们需要把它们加入 Windows 服务中,方便运行管理。
 
6、进入 两个mysql安装下的根目录下的 bin 目录,分别运行 : mysqld-nt install mysql, mysqld-nt install mysql2。
这时它们应该都可以通过 Windows 服务启动和关闭。
7、修改 Windows 注册表, 让两个 mysqld 实例以正确的配置文件运行。运行: regedit打开注册表,
在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\下找到 mysql和mysql2子节点。
修改下面的ImagePath数值,使之对应相应的 my.ini文件。
C:\mysql\bin\mysqld-nt --defaults-file="C:\mysql\my.ini"  mysql
C:\mysql2\bin\mysqld-nt --defaults-file="C:\mysql2\my.ini" mysql2
 
现在 它们都可以正常以 Windows 服务的方式运行了。
然后就是建立 主从服务器了。
 
8、我们假定 mysql 为主服务器, mysql2 为从服务器。
修改 mysql my.ini: log-bin=logbin(注:这是建立异步复制的关键,主从服务器本质上就是通过二进制日志进行异步复制),
 并在 [mysqld] 下添加:server-id=1
修改 mysql2 my.ini:在 [mysqld] 下添加:server-id=2
 
9、通过 命令行客户端 连接 mysql 主服务器,建立一个复制帐号:
grant replication slave on *.* to 'panli'@'localhost' identified by 'panlicake';
10、restart 主服务器后,命令行客户端连接:show master status,记下 File 和 Position 字段,从服务器在连接主服务器时需要这两个参数。
11、命令行客户端连接mysql2后:
change master to
  master_host='127.0.0.1',
  master_user='panli',
  master_password='19840208',
  master_log_file='binlog.000001',
  master_log_pos=305;
 
12、主从服务器设置完成,重起它们,并在 主服务器 上建立测试数据,看看 从服务器 是否有复制进来:)
#########################################################################
Usage: mysqldump [OPTIONS] database [tables]
OR     mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR     mysqldump [OPTIONS] --all-databases [OPTIONS]
For more options, use mysqldump --help

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值