仓酷云

标题: 发布教你在MySQL 5.0以上版本中设置主从库 [打印本页]

作者: 分手快乐    时间: 2015-1-16 20:13
标题: 发布教你在MySQL 5.0以上版本中设置主从库
一些典型的RDBMS功能并不总是在DBaaS系统中可用。例如MySQL学习教程,WindowsAzureSQLDatabase(以前的SQLAzure)是微软的DBaaS产品,提供了一个类似于SQLServer的数据库平台。上面间接纪录下设置主从库的操纵:(本文用的是MySQL5.0以上)<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">1.在主库创建要同步的数据库,创建主库的帐号和修正主库设置<Pstyle="TEXT-INDENT:2em">起首毗连上数据库<Pstyle="TEXT-INDENT:2em">mysql-S/tmp/mysql-3108.sock<Pstyle="TEXT-INDENT:2em">创立测试同步的数据库,"createdatabasesinatest;"<Pstyle="TEXT-INDENT:2em">然后创建卖力同步的用户<Pstyle="TEXT-INDENT:2em">grantallon*.*toali@"%"Identifiedby"abc111";<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">然后修正/data2/ali/mysql3308/my.cnf主库的设置,增添<Pstyle="TEXT-INDENT:2em">binlog-do-db=sinatest<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">2.修正从库设置<Pstyle="TEXT-INDENT:2em">然后修正/data2/ali/mysql3309/my.cnf从库的设置,增添<Pstyle="TEXT-INDENT:2em">master-host=127.0.0.1<Pstyle="TEXT-INDENT:2em">master-user=ali<Pstyle="TEXT-INDENT:2em">master-passWord=abc111<Pstyle="TEXT-INDENT:2em">master-port=3308<Pstyle="TEXT-INDENT:2em">server-id=2<Pstyle="TEXT-INDENT:2em">master-connect-retry=60<Pstyle="TEXT-INDENT:2em">replicate-do-db=sinatest<Pstyle="TEXT-INDENT:2em">log-slave-updates<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">3.重启mysql<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">先杀逝世mysql历程,然后再启动<Pstyle="TEXT-INDENT:2em">/usr/local/mysql/bin/mysqld_safe--defaults-file=/data2/ali/mysql3308/my.cnf--user=root&<Pstyle="TEXT-INDENT:2em">/usr/local/mysql/bin/mysqld_safe--defaults-file=/data2/ali/mysql3309/my.cnf--user=root&<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">4.在主库创立数据表,反省从库是不是同步准确<Pstyle="TEXT-INDENT:2em">进进主库,创立数据表<Pstyle="TEXT-INDENT:2em">mysql-S/tmp/mysql-3108.sock<Pstyle="TEXT-INDENT:2em">CREATETABLEifnotexistsali_test_00(<Pstyle="TEXT-INDENT:2em">`id`int(11)unsignedNOTNULLauto_increment,<Pstyle="TEXT-INDENT:2em">`my_id`varchar(16)binaryNOTNULLdefault,<Pstyle="TEXT-INDENT:2em">`my_title`varchar(96)binaryNOTNULLdefault,<Pstyle="TEXT-INDENT:2em">`status`int(11)unsignedNOTNULLdefault1,<Pstyle="TEXT-INDENT:2em">PRIMARYKEY(`id`),<Pstyle="TEXT-INDENT:2em">KEY`my_id`(`my_id`)<Pstyle="TEXT-INDENT:2em">)TYPE=MyISAM;<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">insertintoali_test_00values(null,32,"aliwwww",1);<Pstyle="TEXT-INDENT:2em">insertintoali_test_00values(null,32,"aliwwww",1);<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">然后反省从库是不是有该表和表中是不是无数据<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">5.反省主从库经常使用命令<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">SHOWSLAVESTATUS;<Pstyle="TEXT-INDENT:2em">SHOWMASTERSTATUS;<Pstyle="TEXT-INDENT:2em">slavestop;<Pstyle="TEXT-INDENT:2em">slavestart;<Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">CHANGEMASTERTO<Pstyle="TEXT-INDENT:2em">MASTER_HOST=127.0.0.1,<Pstyle="TEXT-INDENT:2em">MASTER_USER=ali,<Pstyle="TEXT-INDENT:2em">MASTER_PASSWORD=abc111,<Pstyle="TEXT-INDENT:2em">MASTER_LOG_FILE=mysql-bin.000003,MASTER_LOG_POS=0;
一个相关的问题是第三方支持的资格问题,尽管直接来自厂商的支持和服务可以一定程度上减缓这个问题,但是,对于有的企业来说,通过强有力的本地化支持显然更有吸引力。
作者: 莫相离    时间: 2015-1-18 18:52
相信各位对数据库和怎么样学习数据库都有一些经验和看法,也会有人走了一些弯路总结出自己的经验来,希望大家能把各自的看法和经验拿出来分享,给别人一份帮助,给自己一份快乐
作者: admin    时间: 2015-1-27 18:03
多走走一此相关论坛,多看一些实例开发,多交流0经验,没什么的,我也是刚学没多久!加油
作者: 海妖    时间: 2015-2-12 04:12
不好!如果出了错;不好调试;不好处理!其实web开发将代码分为3层:web层;业务逻辑层和数据访问层;一般对数据库的操作都在数据访问层来做;这样便于调试和维护!而且将来如果是换了数据库的话;你只需要改数据层的代码;其他层的基本可以不变!要是你在jsp中直接调用sql数据库;那么如果换了数据库呢?岂不都要改?如果报了异常呢?怎么做异常处理?
作者: 山那边是海    时间: 2015-3-2 23:15
一个百万级别的基本信息表A,一个百万级别的详细记录表B,A中有个身份证id,B中也有身份id;先要找出A中在B的详细记录。
作者: 小魔女    时间: 2015-3-11 07:32
备份方面可能还是一个老大难的问题。不能单独备份几个表总是感觉不爽。灵活备份的问题不知道什么时候才能解决。
作者: 兰色精灵    时间: 2015-3-17 23:13
只能告诉你,学好数据库语言和原理,多见识几种数据库软件,比一棵树上吊死要好。
作者: 透明    时间: 2015-3-25 09:09
groupby子句可以将查询结果分组,并返回行的汇总信息Oracle按照groupby子句中指定的表达式的值分组查询结果。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2