科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网安全频道MYSQL 双机热备配置手册

MYSQL 双机热备配置手册

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

双机热备必看.

作者:51cto.com 来源:51cto.com 2008年7月7日

关键字: MySQL 数据安全 数据保护

  • 评论
  • 分享微博
  • 分享邮件

  使用的软体:①mysql-standard-4.1.9-pc-linux-gnu-i686.tar.gz,一、安装MYSQL

  # cp mysql-standard-4.1.9-pc-linux-gnu-i686.tar.gz /usr/local/

  # tar zxvf mysql-standard-4.1.9-pc-linux-gnu-i686.tar.gz

  # mv mysql-standard-4.1.9-pc-linux-gnu-i686 mysql

  # cd mysql

  # more INSTALL-BINARY

  [img:12a30a2145]http://bbs.chinaunix.net/forum/uploadfile/1_18901113784342.jpg[/img:12a30a2145]查看安装文档,注意以红色框内为主。# groupadd mysql (建立mysql组)# useradd -g mysql mysql (建立mysql用户并将其用户加入该组)# scripts/mysql_install_db --user=mysql (以mysql用户身份执行数据库初始化安装脚本)# chown -R root . (归属root权限为当前目录)# chown -R mysql data (归属mysql权限为data目录)# chgrp -R mysql . (改变mysql档案/目录的使用者与群组拥有人为当前目录)# bin/mysqld_safe --user=mysql &(以mysql用户身份后台启动mysql数据库进程)

  之后我们就可以启动mysql数据库,如图:[img:12a30a2145]http://bbs.chinaunix.net/forum/uploadfile/2_77231113784381.jpg[/img:12a30a2145]显示为上述图,表示安装正确。

  为了使数据库更加安全,我们来设置数据库密码。/usr/local/mysql/bin/mysqladmin -uroot password 123456如在下次启动服务器时能自动启动mysql数据库进程,我们还需写入/etc/rc.d/rc.local文件里echo “/usr/local/mysql/bin/mysqld_safe --user=mysql &” >>/etc/rc.d/rc.local二、配置MYSQL双机热备

  传统模式都是采用mysql双机互备,至于双机热备我搜索了大量的精华帖子都没有发现安装配置文档。故我的一个想法产生了:当建立新的数据库时,默认会建立到/usr/local/mysql/data这里,如果能改掉默认配置文件my.conf,建立数据库能指定在一个目录上,如我建立在盘柜上,这样就能实现双机热备功能。

  最起初困惑我的是如何更改配置文件my.conf,我咨询了很多朋友,但都没能成功。后听yddll朋友一席言,“把阵列的文件系统挂在/usr/local/mysql/data下”,顿时茅塞顿开,使我如拨云雾而见青天。原理都清楚了,下面开始实施。# fdisk /dev/sdb

  # reboot

  # mkfs.ext3 /dev/sdb1(把阵列格式成ext3格式)# 我们首先把/usr/local/mysql/data/目录下的所有文件拷贝到另一个目录,我这里自创建了一个。# mkdir –p /bak/mysql_data

  # cd /usr/local/mysql/data/

  # cp –a * /bak/mysql_data

  # 之后我们要把/dev/sdb1挂载进去。# mount /dev/sdb1 /usr/local/mysql/data/

  # 注:这时你启动mysql进程,它会抱错,因为此/usr/local/mysql/data/为空,故我们要把刚才备份的文件和目录拷回原处。# cd /bak/mysql_data

  # cp –a * /usr/local/mysql/data/

  # 现在就可以启动mysql数据库了,但当建立数据库时,会提示错误。在这里又困惑了不少时间。最终想起目录属性还没有更改。# 先停下数据库,执行命令/usr/local/mysql/bin/mysqladmin –uroot –p123456 shutdown

  # cd /usr/local/mysql/

  # chown -R mysql data(这样就可以了)# 我们再次启动mysql数据库进程,/usr/local/mysql/bin/mysqld_safe --user=mysql &

  # 这时你再建立数据库,create database squall;

  # 回车后就会提示成功,辅机也要把/dev/sdb1挂载进去,show databases就可以看见在主机建立的squall数据库。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章