免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3470 | 回复: 4
打印 上一主题 下一主题

Mysql 读写分离 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-08-11 12:06 |只看该作者 |倒序浏览
Mysql 读写分离



前几天做了一次配置  那次配置出的问题  我思考了几天   想破了头也不知道错误出在哪
数据就不是同步   连日志都没报错
所以彻底从新做了一次  
因为先前一个做CentOS 5.5原版和一个CentOS 5.5精装版的的  Mysql都是直接Yum 安装的  
不知道是不是这个问题造成的  
-------------------------------------------------------
环境:
CentoS 精装版  192.168.0.250   mysql从
CentOS 精装版  192.168.0.251   mysql主

##################  mysql 源码安装####################################
tar -zxvf mysql*.gz
cd mysql-5.1.50
useradd -d /dev/null -s /sbin/nologin mysql
./configure --prefix=/usr/local/mysql --enable-assembler --enable-thread-safe-client --with-extra-charsets=complex --with-ssl --with-embedded-server --with-named-curses-libs=/usr/lib/libncursesw.so.5
make
make install
cp support-files/my-large.cnf  /etc/my.cnf
cp support-files/mysql.server  /etc/rc.d/init.d/mysqld
PATH=$PATH:/usr/local/mysql/bin
/usr/local/mysql/bin/mysql_install_db
chown -R mysql.mysql /usr/local/mysql/var
chmod 755 /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
service mysqld start
/usr/local/mysql/bin/mysql_secure_installation  
(mysql 源码安装 不解析)
########### 修改my.cnf  #######
[mysqld]
log-bin=mysql-bin
server-id=1
#(暂时指定 同步数据库 和不同步数据库)
#(不过听说同步了Mysql 问题很多 还是先这样做 完成后再修改)

################################
mysql> grant replication slave,reload,super on *.* to slave@192.168.0.250 identified by '123456';
mysql> flush privileges;
mysql> exit;
请在从数据库服务器上测试这个账户:
show privileges
# mysql -u slave -h 192.168.0.250 -p   (这个很有必要 比如slave写成了salve 我经常这样打错)
mysql>
mysql> FLUSH TABLES WITH READ LOCK;  (主库加锁)
记录日志和偏移量
mysql> show master status ;

建立完整快照
mysqldump --all-database --lock-all-tables >db.sql
复制到从数据库
scp -P 22222 db.sql root@192.168.0.250:/root/  (-P 22222 ----因为我的ssh端口修改了22222)

#########  修改从my.cnf ############
server-id=2
master-host=192.168.0.251
master-user=slave
master-password=123456
master-port=3306
loh-bin=mysql-bin
-----------------------------------
service mysqld restart
mysql -u root -p < db.sql    (导入)
unlock tables ;   (主库解锁)
mysql> slave stop;
mysql> CHANGE MASTER TO MASTER_HOST='192.168.0.251', MASTER_USER='slave',
MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000005',MASTER_LOG_POS=177;  (后面log_file log_pos 参照主库的日志名称和偏移量)
mysql>  salve start ;
查状态
mysql> show master status;
mysql> show slave status;
mysql> show processlist ;

数据库操作
create table test.t(name int,age int) ;
insert into test.t values('admin','11');
从库 select * from test.t
测试正常
#####################################
记得Iptables  添加 允许3306

论坛徽章:
0
2 [报告]
发表于 2011-08-11 12:49 |只看该作者
谢谢分享,学习了。。。

论坛徽章:
0
3 [报告]
发表于 2011-08-11 12:49 |只看该作者
谢谢分享,学习了。。。

论坛徽章:
1
射手座
日期:2014-03-06 22:16:03
4 [报告]
发表于 2011-08-15 17:13 |只看该作者
回复 1# so_brave


    老兄没有看到读写分离啊,只是同步。

论坛徽章:
0
5 [报告]
发表于 2011-08-17 14:27 |只看该作者
回复 4# key1077


    读写分离估计是应用级别的吧。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP