学习资料

学习的笔记


0控制文件

<p>[TOC]</p> <h2>添加或移动控制文件(二进制初始化参数文件)</h2> <p>2021-06-02 11:01:55 星期三</p> <h3>查看一些参数</h3> <pre><code>select type,record_size,records_total,records_used from v$controlfile_record_section ;--查看控制文件的配置,11g有37条记录,12c有41条记录 select type,record_size,records_total,records_used from v$controlfile_record_section where type in ('REDO LOG','TABLESPACE','DATAFILE');--查看常用的控制文件信息 select value from v$parameter where name='control_files';--通过这个数据字典获取控制文件的位置 select name from v$controlfile;--这个字典也是获取控制文件的位置的 select value from v$diag_info where name='Diag Trace';--追踪文件的目录</code></pre> <h2>修改控制文件位置</h2> <h3>宝儿移动控制文件:数据库崩溃了,原因是全部控制文件损失</h3> <pre><code>select name from v$controlfile;--查看控制文件的位置 /u01/app/oracle/oradata/orcl/control01.ctl /u01/app/oracle/oradata/orcl/control02.ctl</code></pre> <h3>列出所有*.ctl文件</h3> <pre><code>[oracle@oracle orcl]$ pwd /u01/app/oracle/oradata/orcl [oracle@oracle orcl]$ ll *.ctl -rw-r----- 1 oracle oinstall 10600448 Apr 24 22:56 control01.ctl -rw-r----- 1 oracle oinstall 10600448 Apr 24 22:56 control02.ctl -rw-r----- 1 oracle oinstall 10600448 Dec 25 08:31 control122500.ctl -rw-r----- 1 oracle oinstall 10600448 Dec 25 08:30 control1225.ctl [oracle@oracle orcl]$ </code></pre> <h3>确定哪个盘安全有空间,进入,创建存放控制文件的文件夹</h3> <pre><code>[oracle@oracle backup]$ mkdir /home/oracle/backup/disk2/jinlian [oracle@oracle backup]$ mkdir /home/oracle/backup/disk4/jinlian</code></pre> <h3>检查所创建的目录是否存在</h3> <pre><code>[oracle@oracle backup]$ dir disk2 disk4 disk2: jinlian moon orcl disk4: jinlian moon orcl [oracle@oracle backup]$ </code></pre> <h3>将控制文件移动到刚才创建的目录下</h3> <pre><code>SQL&gt; alter system set control_files = '/home/oracle/backup/disk2/jinlian/control01.ctl','/home/oracle/backup/disk4/jinlian/control02.ctl' scope=spfile; --恢复修改用 SQL&gt; alter system set control_files = '/u01/app/oracle/oradata/orcl/control01.ctl','/u01/app/oracle/oradata/orcl/control02.ctl' scope=spfile;</code></pre> <h3>关闭数据库进行复制文件</h3> <p><code>shutdown immediate</code></p> <h3>复制实际文件到新的目录中</h3> <pre><code>[oracle@oracle orcl]$ cp control01.ctl /home/oracle/backup/disk2/jinlian/ [oracle@oracle orcl]$ cp control02.ctl /home/oracle/backup/disk4/jinlian/</code></pre> <h3>复制完成后打开数据库</h3> <p><code>startup</code></p> <h3>检查当前控制文件目录</h3> <pre><code>SQL&gt; select name from v$controlfile; /home/oracle/backup/disk2/jinlian/control01.ctl /home/oracle/backup/disk4/jinlian/control02.ctl</code></pre> <h3>删除垃圾控制文件</h3> <pre><code>[oracle@oracle orcl]$ rm -f control01.ctl [oracle@oracle orcl]$ rm -f control02.ctl </code></pre> <h2>控制文件备份:</h2> <pre><code>alter database backup controlfile to '/home/oracle/backup/controlfilebackup'; alter database backup controlfile to '/mnt/hgfs/vmwareshare/178controlbk.ctl';</code></pre> <h2>备份用户追踪文件中</h2> <p><code>alter database backup controlfile to trace;</code></p> <h2>用户追踪文件目录</h2> <ul> <li>根据时间找出刚才创建的文件,及时保存。 <code>select value from v$diag_info where name='Diag Trace';</code> <hr /></li> </ul>

页面列表

ITEM_HTML