mysql 主从配置

最近平台要开发许多顶级域名的企业站,不得不踏上数据库集群的道路,mysql 对大型数据处理提供了集群机制,对于暴炸增长的数据,mysql 提供了 mysql cluster CGE, 他有以下特点

 

MySQL Cluster 为您提供以下好处:
通过自动分片实现高水平的写入扩展能力

MySQL Cluster 自动将表分片(或分区)到不同节点上,使数据库可以在低成本的商用硬件上横向扩展,
同时保持对应用程序完全应用透明。
99.999% 的可用性
凭借其分布式、无共享架构,MySQL Cluster 可提供 99.999% 的可用性,确保了较强的故障恢复能力
和在不停机的情况下执行预定维护的能力。
SQL 和 NoSQL API
MySQL Cluster 让用户可以在解决方案中整合关系数据库技术和 NoSQL 技术中的最佳部分,从而降低
成本、风险和复杂性。

实时性能
MySQL Cluster 提供实时的响应时间和吞吐量,能满足最苛刻的 Web、电信及企业应用程序的需求。

具有跨地域复制功能的多站点集群
跨地域复制使多个集群可以分布在不同的地点,从而提高了灾难恢复能力和全球 Web 服务的扩展能力。

联机扩展和模式升级
为支持持续运营,MySQL Cluster 允许向正在运行的数据库模式中联机添加节点和更新内容,
因而能支持快速变化和高度动态的负载

 

对于我们来说,比较悲催,此套件是商业软件,但是我们可以打造自己的一套集群机制,本文主要是关于我mysql 主从配置遇到的问题

  

   环境: master:

    window 2003

     mysql  5.0.45

    slaver :

      os : centos 6.4

      mysql :  5.1.69

   第一步: 打开master 主机的my.ini 写入以下内容

   

log-bin=mysql-bin
binlog-do-db=test  # backup database
binlog-ignore-db=mysql # no backup database
binlog-ignore-db = information_schema # no backup database

  第二步:重启master mysql;  创建授权用户

   

  

GRANT REPLICATION SLAVE ON *.* TO 'mysql_slave'@'%' IDENTIFIED BY 'slave_pw';

 FLUSH   PRIVILEGES;

 

  第三步 设置 slave mysql, 打开 my.cnf  设置如下:

 

##################################################
##  data backup  server-id=2
####################################################
log_bin = /var/log/mysql/mysql-bin.log
server-id=2
master-host = 192.126.X.X # master IP
master-user = mysql_slave
master-pass = slave_pw
master-port = 33179
master-connect-retry = 60
replicate-do-db = test
##################################################
    

  

    第四步:打开master mysql 查看

mysql> show master status\G;
*************************** 1. row ***************************
            File: mysql-bin.000002
        Position: 1623
    Binlog_Do_DB: test
Binlog_Ignore_DB: mysql
1 row in set (0.00 sec)

ERROR:
No query specified

 

    第五步 :重启 slave mysql 执行以下命令

   

mysql> slave stop;
Query OK, 0 rows affected (2.00 sec)
mysql> change master to master_host='192.126.X.X',master_port=33179,
master_user='mysql_slave', master_password='slave_pw', master_log_file='mysql-bin.000002', master_log_pos=1494;
mysql>slave start;
mysql>show slave status\G;

 

 

  整个配置完毕,需要注意的各个数据库之间 编码最好统一为utf8 ,还有数据库权限一定要设置好 最后一定要在slave 执行 一条修改命令并要把

master_log_file='mysql-bin.000002', 
master_log_pos=1494;

   两个参数写好 否则会爆出以下错误

  Last_IO_Errno: 1045
  Last_IO_Error: error connecting to master '[email protected]:33179' - retry-time: 60  retries: 86400

 ok !

 

你可能感兴趣的:(mysql)