您的位置:首页 > 运维架构 > Linux

Linux 安装MySQL5.5 及 双机热备配置

2015-06-19 16:33 465 查看



一、Linux 下MySQL的安装步骤

1.将Server\Client 压缩包导入相应目录下
cd /usr/local/
mkdir src
mkdir mysql
将安装包导入该路径下



2.查看当前系统是否已经安装过mysql(在根目录下执行命令)

     


    如有结果说明已安装过mysql,需要先将其删除,如果没有执行步骤5

3.如果当前显示有安装则需先删除(文件名为上一步骤查询结果,有几个删几个) 

     rpm -e --nodeps MySQL-server-5.5.21-1.linux2.6.x86_64 

     rpm -e --nodeps MySQL-client-5.5.21-1.linux2.6.x86_64

4.检查Mysql默认安装路径看是否有残余文件,残余文件会导致安装失败

   执行 cd /var/lib 看该目录下是否存在mysql文件

   如果存在执行  rm -rf mysql  删除该文件夹,不存在跳过

5.在安装包目录安装Mysql安装包,先装server再装client

 rpm -ivh MySQL-server-5.5.21-1.linux2.6.x86_64

 rpm -ivh MySQL-client-5.5.21-1.linux2.6.x86_64

6.将mysql配置文件移至/etc目录下

  cd /var/lib/mysql/

  将my-huge.cnf 重命名为 my.cnf 移到 /etc(该文件夹在根目录下) 目录下

  因为系统默认读/etc下的my.cnf作为mysql的配置文件

7.启动myql

 service mysql start

8.设置初始用户 

 mysqladmin -u root password ‘trsadmin’

9.使用该用户登录

 mysql -u root -ptrsadmin
 


二、MySQL建立主-主服务器双机热备配置步骤

主服务器(A):192.168.200.32

从服务器(B):192.168.201.173

1.创建同步用户

    同时在主从服务器建立一个连接帐户,该帐户必须授予REPLIATION SLAVE权限。这里因为服务器A和服务器B互为主从,所以都要分别建立一个同步用户。

    两台服务器分别登录进入mysql

        


    服务器A:

    mysql> grant replication slave on *.* to 'root'@'192.168.201.173' identified by 'trsadmin';

    mysql> flush privileges;

    服务器B:

    mysql> grant replication slave on *.* to 'root'@'192.168.200.32' identified by 'trsadmin';

    mysql> flush privileges;

2.修改my.cnf配置文件

服务器A

[mysqld]

       server-id = 1

       log-bin=mysql-bin 

       #以下内容为添加部分

       binlog-do-db = test

       binlog-ignore-db = mysql

       log-slave-updates

       sync_binlog = 1

       auto_increment_offset = 1

       auto_increment_increment = 2

       #需要同步的数据库

       replicate-do-db = smas   

       #忽略的数据库,将不做同步

       replicate-ignore-db = mysql,information_schema

服务器B:

[mysqld]

       #此处需要修改

       server-id = 2

       log-bin=mysql-bin 

       #以下内容为添加部分

       master-slave need

       replicate-do-db = smas

       replicate-ignore-db = mysql,information_schema,performance_schema

       binlog-do-db = smas

       binlog-ignore-db = mysql

       log-slave-updates

       sync_binlog = 1

       auto_increment_offset = 2

       auto_increment_increment = 2

3.分别重启两台服务器的服务

     退出mysql控制台,重启服务

    



     重新登录mysql控制台

      


4.分别查A服务器和B服务器作为主服务器的状态

   服务器A:

   


  服务器B:

  


5.分别在A服务器和B服务器上用change master to 指定同步位置

    分别记住A\B服务器的File和Position属性值,对应在下面配置中

    服务器A:

        mysql>change master to

        >master_host='192.168.201.173',master_user='root',master_password='trsadmin',

        > master_log_file=' mysql-bin.000001 ',master_log_pos=107;

    服务器B:

        mysql>change master to

        >master_host='192.168.200.32',master_user='root',master_password='trsadmin',

        > master_log_file=' mysql-bin.000001 ',master_log_pos=107;

命令输入流程如图




6.分别在A和B服务器上查看从服务器状态
如果这两个属性都是yes代表成功



7.测试是否连接成功
A:
   


    
B:



  由此证明完成A→B备份成功,再反向测试。
  最后从结果可以看出主-主形式的双机热备是能成功实现的。

最后:

 这里建议我们在项目中最好不要用root远程连接mysql,重新建一个其他用户供项目使用()。

 mysql> create user trsadmin identified by 'trsadmin'; 第一个trsadmin是用户名,第二个是密码。 

mysql> update mysql.user set Host='%' where user = 'trsadmin'; 

 

在项目中连接就可以使用这个用户名密码(hibernate.property)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux mysql