189 8069 5689

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://cdxtjz.cn/article/dooiodi.html

其他资讯