Oracle学习之DATAGUARD(十) 在同台机器上使用11g rman新特性创建DG
2015-08-07 21:03
726 查看
首先使用dbca建立一个数据库,db_name=primary 。
2. 为两个数据库准备静态监听。及连接彼此的TNSNAME
7. 将主库改为FORCE LOGGING
主库
2. 为两个数据库准备静态监听。及连接彼此的TNSNAME
11gdg1-> cat listener.ora tnsnames.ora # listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = primary) (ORACLE_HOME = /u01/app/oracle/product/11.2.0/db_1) (SID_NAME = primary) ) (SID_DESC = (GLOBAL_DBNAME = standby) (ORACLE_HOME = /u01/app/oracle/product/11.2.0/db_1) (SID_NAME = standby) ) ) LISTENER = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 11gdg1.localdomain.com)(PORT = 1521)) ) ADR_BASE_LISTENER = /u01/app/oracle # tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora # Generated by Oracle configuration tools. PRIMARY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.199.216)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = primary) ) ) STANDBY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.199.216)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = standby) ) ) 11gdg1->3. 为从库创建一个简单的pfile
11gdg1-> echo "db_name=whatever" > initstandby.ora4. 为从库创建口令文件
11gdg1-> cp orapwprimary orapwstandby5. 建立从库需要的目录
11gdg1->mkdir -p /u01/app/oracle/admin/standby/adump 11gdg1->mkdir -p /u01/app/oracle/oradata/standby 11gdg1->mkdir -p /u01/app/oracle/fast_recovery_area/standby6. 启动从数据库到mount
7. 将主库改为FORCE LOGGING
SQL> alter database force logging; Database altered.8. 开启主库归档
SQL> archive log list Database log mode No Archive Mode Automatic archival Disabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 1 Current log sequence 2 SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. SQL> startup mount ORACLE instance started. Total System Global Area 839282688 bytes Fixed Size 2233000 bytes Variable Size 494931288 bytes Database Buffers 339738624 bytes Redo Buffers 2379776 bytes Database mounted. SQL> alter database archivelog; Database altered. SQL> alter database open; Database altered.9. 创建standby log
ALTER DATABASE ADD STANDBY LOGFILE '/u01/app/oracle/oradata/primary/sredo01.log' size 50M; ALTER DATABASE ADD STANDBY LOGFILE '/u01/app/oracle/oradata/primary/sredo02.log' size 50M; ALTER DATABASE ADD STANDBY LOGFILE '/u01/app/oracle/oradata/primary/sredo03.log' size 50M; ALTER DATABASE ADD STANDBY LOGFILE '/u01/app/oracle/oradata/primary/sredo04.log' size 50M;10. 创建standby数据库
run { allocate channel prmy1 type disk; allocate channel prmy2 type disk; allocate channel prmy3 type disk; allocate channel prmy4 type disk; allocate channel prmy5 type disk; allocate auxiliary channel stby1 type disk; duplicate target database for standby from active database spfile parameter_value_convert 'primary','standby' set 'db_unique_name'='standby' set control_files='/u01/app/oracle/oradata/standby/control01.ctl' set db_recovery_file_dest='/u01/app/oracle/fast_recovery_area' set DB_RECOVERY_FILE_DEST_SIZE='4G' set log_file_name_convert='/primary/','/standby/' set db_file_name_convert='/primary/','/standby/' set fal_server='primary' set standby_file_management='AUTO' set log_archive_config='dg_config=(primary,standby)' set log_archive_dest_2='service=primary LGWR ASYNC valid_for=(ONLINE_LOGFILES,PRIMARY_ROLE) db_unique_name=primary' nofilenamecheck; sql channel prmy1 "alter system set log_archive_config=''dg_config=(primary,standby)''"; sql channel prmy1 "alter system set log_archive_dest_2=''service=standby LGWR ASYNC valid_for=(ONLINE_LOGFILES,PRIMARY_ROLE) db_unique_name=standby''"; sql channel prmy1 "alter system set log_archive_max_processes=5"; sql channel prmy1 "alter system set fal_server=standby"; sql channel prmy1 "alter system set standby_file_management=AUTO"; sql channel prmy1 "alter system archive log current"; allocate auxiliary channel stby type disk; sql channel stby "alter database recover managed standby database using current logfile disconnect"; }11. 验证数据同步
主库
SQL> conn / as sysdba Connected. SQL> alter user scott account unlock; User altered. SQL> alter user scott identified by tiger; User altered. SQL> conn scott/tiger Connected. SQL> create table t1 as select * from emp; Table created.从库
SQL> alter database recover managed standby database cancel; Database altered. SQL> alter database open; Database altered. SQL> conn scott/tiger Connected. SQL> select count(*) from t1; COUNT(*) ---------- 14
相关文章推荐
- mysql database manual(mysql数据库手册)
- INSERT INTO .. ON DUPLICATE KEY更新多行记录
- mysql #1062 –Duplicate entry '1' for key 'PRIMARY'
- 什么是DAO Database Access Object
- mysql ON DUPLICATE KEY UPDATE语句示例
- mysql error:#1062 Duplicate entry ‘***′ for key 1问题解决方法
- 在数据库‘master’中拒绝CREATE DATABASE权限问题的解决方法
- Sample script that deletes a SQL Server database
- MySQL的Replace into 与Insert into on duplicate key update真正的不同之处
- Last_Errno: 1062,Last_Error: Error Duplicate entry
- MYSQL的REPLACE和ON DUPLICATE KEY UPDATE语句介绍解决问题实例
- insert into … on duplicate key update / replace into 多行数据介绍
- 用MyEclipse配置DataBase Explorer(图示)
- 11. Laravel 4 结构生成器 Schema
- jfinal-flyway 数据脚本升级插件,伴随应用的升级自动升级或回滚数据库
- 使用flyway-maven-plugin,执行数据库初始化sql文件,和sql数据库升级
- 基于spark1.3.1的spark-sql实战-01
- python使用pyodbc,freetds连接azure数据库
- 【转】mysql ERROR 1049 (42000): Unknown database '******' ”错误处理办法
- MySQL机sqlserver注射和php注入