Monday, January 17, 2011

How To Add Column To A Table In Multimaster Replication

1- Connect to the Master Definition Database with repadmin user and stop the Replication Group

SQL> conn repadmin/repadmin

SQL> BEGIN
DBMS_REPCAT.SUSPEND_MASTER_ACTIVITY (
gname => 'ON_GROUP');
END;
/

2- Add the column to the table using DBMS_REPCAT.EXECUTE_DDL Package

SQL> BEGIN
DBMS_REPCAT.EXECUTE_DDL (
gname => 'ON_GROUP',
master_list => 'ORCL1,ORCL2',
DDL_TEXT => 'alter table scott.emp add (emp_NAME VARCHAR2(128))');
END;
/

3- Regenerate Replication support for the table
SQL> BEGIN
DBMS_REPCAT.GENERATE_REPLICATION_SUPPORT(
sname => '"SCOTT"',
oname => '"EMP"',
type => 'TABLE',
min_communication => TRUE);
END;
/

4- Start the Replication Group
SQL> BEGIN
DBMS_REPCAT.RESUME_MASTER_ACTIVITY (
gname => 'ON_GROUP');
END;
/

No comments: