技术开发 频道

MySQL的有备无患

  【IT168技术文档】众所周知,企业应用数据库除了速度,性能,安全等因素之外最重要的因为就在于备份数据。有了安全可靠的备份后,身为SA的我们便可舒心的享受生活了,反之,如果没有一个可靠的备份策略,那么各位同事一定时时的在为数据的丢失而烦恼。那本文就总结了笔者在企业中对于备份的的一些心得。

  首先我对MYSQL数据库的备份计划分为二个步骤,第一步为时时备份,就是MYSQL的MASTER,SLAVE模式,此模式的优势就在可以从MASTER数据库即时的备份到SLAVE上,对于硬盘损坏导致的数据库问题可以有效的进行预防,同时在配置文件中可声明生成二进制日志文件,又可以在任意时间进行数据恢复。第二部完全备份,有了时时备份,仍不可掉以轻信,大家都知道计算机这东西没准什么时间就会给你冒个异常,作为一名合格的系统管理员,我们要尽量做到万无一失误,那么我的计划是在本地的CRONTAB中添加每日的MYSQLDUMP命令,用来导出数据库,并传送到一台备份服务器。

  下面来具体的为大家说明如何来实施我的计划:

  1.主从模式:

  MASTER:

  配置my.cnf,在[mysqld]中添加

  server-id=1

  log-bin#(启动二进制备份)

  binlog-do-db=database1 #(选择需要备份的本地数据库)

  log#(记录本地LOG日志)

  log-update#(更新本地LOG日志)

  在MYSQL中执行:

  GRANT SELECT,REPLICATION SLAVE ON database1.* TO backup@123.123.123.123 IDENTIFIED BY 'backuppwd';

  解释:

  log-bin#(启动二进制备份)

  binlog-do-db=database1,database2#(选择需要备份的本地数据库)

  将本地的数据存储转换为二进制模式,方便传送至SLAVE,本地查看数据库日志不方便。

  log#(记录本地LOG日志)

  log-update#(更新本地LOG日志)

  直接将二进制日志记录在本地,本地会在数据库目录生成以主机名命名的log文件,方便本地查看。

  GRANT SELECT,REPLICATION SLAVE ON database1.* TO backup@123.123.123.123 IDENTIFIED BY 'backuppwd';

  为SLAVER添加一个可以访问的用户

  SLAVER:

  server-id=2

  master-host=123.123.123.123#(MASTER的IP)

  master-user=backup

  master-password=backuppwd

  master-port=3306

  master-connect-retry=60

  set-variable=replicate-do-db=database1

  log-bin

  log-slave-updates

  解释:

  server-id=2

  master-host=123.123.123.123#(MASTER的IP)

  master-user=backup

  master-password=backuppwd

  master-port=3306

  master-connect-retry=60

  配置MASTER的相关信息

  log-bin

  log-slave-updates

  本地记录二进制日志并更新  

0
相关文章