着力同步

施行 插入 修改 更新操作

def executeDb(sqlStr):
    conn=MySQLdb.connect(host='192.168.1.230',user='root',passwd='',port=3306)
    conn.select_db("test")
    cur=conn.cursor()
    cur.execute(sqlStr)
    conn.commit()
    cur.close()
cur = selectDb("select * from user")
executeDb("insert into user(name,content) values('user','内容') ")
for r in cur.fetchall():
    print r[1]

参考:
MySQL
http://www.cnblogs.com/echosong/p/3540783.html
SQL Server
http://www.cnblogs.com/webapi/p/5283866.html

季、附加 python代码简单实现读写库分离
import MySqldb

仲、mysql 数据库同步的实现原理:
(1) master将转移记录及二进制日志(binary
log)中(那么些记录称二进制日志事件,binary log events);
(2) slave将master的binary log events拷贝到它们的交接日志(relay log);
(3) slave重做衔接日志被的波,将转移反映其好之数据。

               [mysqld]    
                        port=3306         
                        server-id=1       # master端ID号        
                        log-bin=log          #日志路径及文件名         
                        binlog-do-db=test         #需要同步的数据库         
                        binlog-ignore-db=mysql              #不需要同步的数据库       
               B. 在master上位slave添加一个同步账号          
                        grant replication slave on *.* to 'net'@'192.168.1.122' identified by '123456';        
               C. 重启mysql服务         
                  运行 show master status         
                  File  Position(同步位置)  Binlog_Do_DB(同步库)  Binlog_Ignore_DB(不需要同步的库)           
                  log.000001  424   test          mysql        
     4)、从服务器上 做如下操作 slave          
                 拷贝如下代码到 my.ini 文件 mysqld 下面         
               server-id=2        
               master-host=192.168.1.230          
               master-user= net         
               master-password= 123456        
               master-port= 3306        
               master-connect-retry=60        
               replicate-do-db=test     #同步的数据库          
               replicate-ignore-db=mysql  #被忽略的数据库       
               B.在mysql里头执行        
                stop slave          
                change master to          
                master_log_file='log.000001',          
                master_log_pos=424          
                改变和添加相应的配置项 注意这个地方就是主库的文件 和 位置      
               c. start slave; 开启同步 让从库去主库里头去数据      
               D. show slave status 查看同步配置项目状态        

 

图片 1

image

 

mysql 主从 同步原理和布局
平等、在mssql 里头实现共同镜像,只可以主库用而镜像库不克而用,而mysql
主从同步可以兑现 数据库的读写分离,主库负责 update insert delete
,从仓库负责select 这样一来具有相应的助益:
(1) 数据分布 (Data distribution )
(2) 负载平衡(load balancing)
(3) 备份(Backups)
(4) 高可用性和容错行 High availability and failover

读取数据库

def selectDb(sqlStr):
    conn=MySQLdb.connect(host='192.168.1.122',user='root',passwd='',port=3306)
    conn.select_db("test")
    cur=conn.cursor()
    cur.execute(sqlStr)
    conn.commit()
    return cur

老三、mysql主从同步复制的兑现配置过程
1、 条件
些微雅服务器分别吗
A:192.168.1.230 【master】
B: 192.168.1.122 【slave】
2、步骤
1)、 在masert 里 mysql数据库建立wei slave用来拿到数据库的账号密码
账号为: net
密码为: 123456
权限: 赋予需要联合的数量对应权限
2)、 把用一块的数据库 从 主库拷贝到
从服务器中建立(意思就是是包同步的数据库一致)
3)、主库下面做如下操作(window 打开 my.ini 文件 liunx 系统 my.conf
数据库配置文件)
A. 于mysqld 下上加以下代码

暨是很功告成,可以修改或插入
主库test里头的数据从库就会暴发连锁的实时变化

相关文章