博客
关于我
Oracle实验——初始化参数文件与控制文件管理
阅读量:754 次
发布时间:2019-03-23

本文共 2460 字,大约阅读时间需要 8 分钟。

Oracle数据库初始化参数文件与控制文件管理

1. 查询现有Oracle数据库的初始化参数文件及控制文件

为了获取Oracle数据库当前使用的初始化参数文件和控制文件,可以采用以下方法:

  • 通过动态性能视图v$parameter查询
    show parameter spfileshow parameter control_files

    该方法通过动态性能视图快速获取最新的初始化参数设置。

2. 创建并切换参数文件(pfile)与服务器参数文件(spfile)

  • 从spfile创建pfile

    create pfile='D:\orclpfileA.ora' from spfile

    此时数据库继续从spfile启动,关闭数据库后修改orclpfileA.ora文件中的*.open_cursors参数,例如将*.open_cursors=300修改为*.open_cursors=500。

  • 从pfile创建spfile

    create spfile from pfile='D:\orclpfileA.ora'

    此时spfile将基于pfile的内容重新生成,*.open_cursors参数将被设置为500。

  • 从内存创建pfile和spfile

    create pfile='D:\orclpfileA.ora' from memory;create spfile from memory;

    这种方法适用于重新初始化数据库或在特定情况下快速创建参数文件。

3. 学习修改Oracle数据库参数文件中的参数值

以*.open_cursors参数为例,Oracle提供了多种选项来实现参数修改:

  • alter system set语句:
    alter system set open_cursors=300 scope=memory|spfile|both;
    • scope=memory:仅修改当前实例的内存参数,重启数据库后参数将丢失。
    • scope=spfile:修改仅spfile文件中的参数,需数据库重新启动后生效。
    • scope=both:同时修改spfile和当前实例的内存参数。

4. 添加新的控制文件到Oracle数据库

  • 步骤1:查看当前控制文件数

    show parameter control_files

    输出可能显示现有的控制文件数,例如两个。

  • 步骤2:修改 初始化参数control_files:通过在spfile中增加新的控制文件路径:

    alter system set control_files='/D:\ORACLE\APP\WYZ\ORADATA\ORCL\CONTROL01.CTL','/D:\ORACLE\APP\WYZ\ORADATA\ORCL\CONTROL02.CTL','/C:\ORACLE\APP\WYZ\ORADATA\ORCL\CONTROL03.CTL' scope=spfile;

    确保路径正确,并根据实际服务器布局调整。

  • 步骤3:备份现有控制文件并关闭数据库

    shutdown immediate

    将现有的控制文件或备份到临时目录:

    cp /D:\ORACLE\APP\WYZ\ORADATA\ORCL\CONTROL01.CTL /backups/
  • 步骤4:启动数据库并验证控制文件

    startupshow parameter control_files

    此时数据库将使用新增的控制文件。

5. 备份控制文件并验证其有效性

  • 步骤1:备份控制文件到跟踪文件

    alter database backup controlfile to trace;

    此操作会生成名为orcl_ora_*.trc的跟踪文件。

  • 步骤2:验证跟踪文件

    show parameter control_files

    关闭数据库并执行]:

    shutdown immediate
  • 步骤3:复制控制文件到目标路径

    mv /D:\ORACLE\APP\WYZ\ORADATA\ORCL\CONTROL01.CTL /D:\ORACLE\APP\WYZ\ORADATA\ORCL\ORCL_control backups/
  • 步骤4:创建新的控制文件并验证

    CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS NOARCHIVELOG MAXLOGFILES 16 MAXLOGMEMBERS 3 MAXDATAFILES 100 MAXINSTANCES 8 MAXLOGHISTORY 292 LOGFILE GROUP 1 '/D:\ORACLE\APP\WYZ\ORADATA\ORCL\REDO01.LOG' SIZE 200M BLOCKSIZE 4096, GROUP 2 '/D:\ORACLE\APP\WYZ\ORADATA\ORCL\REDO02.LOG' SIZE 200M BLOCKSIZE 4096, GROUP 3 '/D:\ORACLE\APP\WYZ\ORADATA\ORCL\REDO03.LOG' SIZE 200M BLOCKSIZE 4096

    确认创建成功后数据库进入MOUNT状态。

  • 步骤5:恢复数据库并验证数据文件

    alter database open resetlogs;select status from v$instance;

    查看数据文件:

    desc dba_data_filesselect FILE_NAME from dba_data_files;

    确认所有数据文件已正确恢复,若需要临时文件,执行:

    alter tablespace temp add tempfile '/D:\ORACLE\APP\WYZ\ORADATA\ORCL\TEMP01.DBF' SIZE 20971520 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M;

转载地址:http://ebjzk.baihongyu.com/

你可能感兴趣的文章
MTCNN 人脸检测
查看>>
MyEcplise中SpringBoot怎样定制启动banner?
查看>>
MyPython
查看>>
MTD技术介绍
查看>>
MySQL
查看>>
MySQL
查看>>
mysql
查看>>
MTK Android 如何获取系统权限
查看>>
MySQL - 4种基本索引、聚簇索引和非聚索引、索引失效情况、SQL 优化
查看>>
MySQL - ERROR 1406
查看>>
mysql - 视图
查看>>
MySQL - 解读MySQL事务与锁机制
查看>>
MTTR、MTBF、MTTF的大白话理解
查看>>
mt_rand
查看>>
mysql /*! 50100 ... */ 条件编译
查看>>
mudbox卸载/完美解决安装失败/如何彻底卸载清除干净mudbox各种残留注册表和文件的方法...
查看>>
mysql 1264_关于mysql 出现 1264 Out of range value for column 错误的解决办法
查看>>
mysql 1593_Linux高可用(HA)之MySQL主从复制中出现1593错误码的低级错误
查看>>
mysql 5.6 修改端口_mysql5.6.24怎么修改端口号
查看>>
MySQL 8.0 恢复孤立文件每表ibd文件
查看>>