mysql怎么同步表结构的简单介绍
有2个Mysql数据库,一个本地,一个线上,需要同步两个数据库的数据。 但是数据表的结构不一样,怎么同步
1。表结构相同的表,且在同一数据库(如,table1,table2)
成都创新互联公司-专业网站定制、快速模板网站建设、高性价比阳新网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式阳新网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖阳新地区。费用合理售后完善,10多年实体公司更值得信赖。
Sql :insert into table1 select * from table2 (完全复制)
insert into table1 select distinct * from table2(不复制重复纪录)
insert into table1 select top 5 * from table2 (前五条纪录)
2。 不在同一数据库中(如,db1 table1,db2 table2)
sql: insert into db1..table1 select * from db2..table2 (完全复制)
insert into db1..table1 select distinct * from db2table2(不复制重复纪录)
insert into tdb1..able1 select top 5 * from db2table2 (前五条纪录)
mysql 如何同步部分表,求助
主上修改my.cnf文件:
server-id=1
log-bin=mysql-bin
从上修改配置文件 my.cnf
server-id=2
relay-log=replay-bin
read-only =1
replicate-ignore-db = mysql
replicate-ignore-db = test
replicate-ignore-db = information_schema
replicate-wild-do-table = mysys.channel #需要同步的一个表
replicate-wild-do-table = mysys.isp_channel #需要同步的一个表
创建 同步的用户(主上)
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* to rep@'22.2.2.22' identified by 'slave_password';
同步到主库(在从上操作)
SLAVE STOP;
reset slave;
CHANGE MASTER TO MASTER_HOST='111.11.1.11',
MASTER_USER='rep',
MASTER_PASSWORD='slave_password',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=0;
start slave;
show slave status\G
在从上验证:
mysql show slave status\G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 111.11.1.11
Master_User: rep
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000001
Read_Master_Log_Pos: 593
Relay_Log_File: replay-bin.000001
Relay_Log_Pos: 730
Relay_Master_Log_File: mysql-bin.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB: mysql,test,information_schema
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table: mysys.channel,mysys.isp_channel,mysys.department,mysys.department_business,mysys.sms_key
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 593
Relay_Log_Space: 730
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
1 row in set (0.00 sec)
ERROR:
No query specified
有2个数据库,怎么实现数据同步
在pgsql的数据库中将要同步的表建立一个一模一样的同步表。然后建触发器,将进入源表中的数据触发到同步表中。然后做一个windows服务扫描这个同步表并且将同步表中的数据同步到mysql
或access中。
如果是整个数据库中有许多表要进行同步。则建立一个共用的同步表,结构非常简单。字段如下:
主键(f_id),源表名(f_tablename),主键字段名(f_keyname),主键值(f_keyvalue),操作标识(f_operflag
i:插入
u:更新
d:删除),时间字段(f_time).将要同步的表都建立触发器,只要有增、改、删都触发到这个表里。这样你只扫描这个共用的同步表,根据这些字段值完全可以实现数据的同步。隔离网闸就是这么个原理,只不过它的要比这复杂多了!
如何同步数据库表结构 mysql
都是一个数据库里,直接用关联即可,
1。这样即可以省数据库空间,
2。还方便数据操作,
3。并且不要做二次数据插入!
4。而且绝对的同步!主机开两个窗口,一个进入mysql,一个是shell
--主机阻断写操作
mysql
FLUSH
TABLES
WITH
READ
LOCK;
Query
OK,
rows
affected
(0.00
sec)
mysql
mysql
mysql
SHOW
MASTER
STATUS
本文名称:mysql怎么同步表结构的简单介绍
本文地址:http://myzitong.com/article/dooiodi.html