mysql 双实例配置

前言

项目上需要配置mysql主从,借着这个机会先自己测试练习一下,遇到的第一个问题就是,我只有一个测试服务器,所以决定使用mysqld_mulit,这里记录一下安装配置过程。
这里借鉴了这篇博客:http://chenzehe.iteye.com/blog/1266260
ps:我已经使用apt-get的方法安装过一个mysql ,版本为5.5.44

配置mysqld_mulit

#创建存放数据目录
mkdir -p /usr/local/var/mysql1
mkdir -p /usr/local/var/mysql2

#修改权限
chown -R mysql:mysql /usr/local/var/mysql1
chown -R mysql:mysql /usr/local/var/mysql2

#初始化数据目录  
mysql_install_db --datadir=/usr/local/var/mysql1 --user=mysql  
mysql_install_db --datadir=/usr/local/var/mysql2 --user=mysql  


#在etc目录下创建cnf文件
cd /etc/mysql
mysqld_multi --example > mysqld_multi.cnf

这里贴出来我的配置,因为用于测试,所以比较简单

[mysqld_multi]
mysqld     = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
#user       = multi_admin
#password   = my_password

[mysqld1]
socket     = /usr/local/var/mysql1/mysql1.sock
port       = 3307
pid-file   = /usr/local/var/mysql1/mysql1.pid
datadir    = /usr/local/var/mysql1
#language   = /usr/share/mysql/mysql/english
user       = mysql

[mysqld2]
socket     = /usr/local/var/mysql2/mysql2.sock
port       = 3308
pid-file   = /usr/local/var/mysql2/mysql2.pid

启动

#后面添加1,2就可以启动不同实例
mysqld_multi --defaults-extra-file=/etc/mysqld_multi.cnf start 1

#停止服务
mysqladmin -h 0.0.0.0 -P 3307 -uroot -p shutdown

#查看相应端口是否已经被监听  
netstat -tunlp  

#查看是否有活动进程  
ps -aux|grep mysql

最后别忘记修改密码

# mysql -u root -S /usr/local/var/mysql1/mysql1.sock 

mysql>use mysql;
mysql> update user set password=passworD("test") where user='root';
mysql> flush privileges;
mysql> exit;     

##配置主从复制

主从复制的介绍可以参考这篇博客:http://blog.csdn.net/hguisu/article/details/7325124

里面包含了基本操作流程,这里我只记录一下我操作过程中遇到的问题

首先需要为slave的连接添加一个用户,并授权,保险起见,添加完成后用这个用户登录一下。否则可能会报1045错误,有关于错误的意思,使用perror 1045查看即可

然后在slave连接master过程中可能会报1597错误,这个也是权限不够造成的,可以通过查看用户权限来确认问题

mysql> select * from user where user='mysql2' \G
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值