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)
相关文章推荐
- MySQL中的integer 数据类型
- Linux socket 初步
- 10 篇对初学者和专家都有用的 Linux 命令教程
- Linux 与 Windows 对UNICODE 的处理方式
- Ubuntu12.04下QQ完美走起啊!走起啊!有木有啊!
- 解決Linux下Android开发真机调试设备不被识别问题
- 运维入门
- 运维提升
- Linux 自检和 SystemTap
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- Ubuntu Linux使用体验
- c语言实现hashmap(转载)
- Linux 信号signal处理机制
- linux下mysql添加用户
- mysql procedure