- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章Oracle数据库中的控制文件管理以及常用参数设置由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
1、控制文件 作用:
相关视图:
查看控制文件内容:
1
2
|
strings $ORACLE_BASE
/oradata/
$ORACLE_SID
/control01
.ctl
alter database backup controlfile to trace as
'<filepath&name>'
|
转储控制文件:
1
|
alter system
set
events
'immediate trace name controlf level 10'
|
管理控制文件:
spfile 修改spfile参数control_files(alter……) 。
pfile 一致性关闭数据库 。
状态查询:参数和具体文件是否对应、磁盘空间剩余、控制文件<100M 。
热备控制文件:
数据库归档模式下, 。
1
|
alter database backup controlfile to
'<fpath&name>'
|
其他模式下:
1
|
alter database backup controlfile to trace as
'<fpath&name>'
|
得到建立控制文件脚本 数据库归档模式下rman备份:
1
2
3
|
rman target /
>backup current controlfile; or
>backup database include current controlfile;
|
rman自动备份控制文件:
>show all中的configure controlfile autobackup设置为on 。
1
|
>configure controlfile autobackup on
|
问题解决:
控制文件不一致: (1). 拷贝新版本的控制文件到旧版本文件 2. 修改参数文件,只使用新版本的文件(alter system set……),重启 。
控制文件丢失: 【mount阶段,使用archive log list可以查看数据库是否在归档模式下】 。
1. 控制文件无备份 a.数据库非归档,数据文件联机日志文件存在 --- 重建控制文件 。
1
|
>create controlfile reuse database <sid> noarchivelog noresetlogs datafile <
'datafiles'
> logfile <group X
'logfiles'
size Y>
|
2. 控制文件有备份 a.数据库归档,数据文件联机和归档日志文件存在 --- 还原控制文件 先全备,再将控制文件拷贝到参数指定的路径,然后 。
1
|
>alter database recover database using backup controlfile
until
change;
|
2、参数设置 。
1
|
>show parameter <keyword>
|
查询参数 。
作用: 记录了数据库的配置。内存分配、进程数、会话数等 。
分类: pfile类型 ---文本文件 $ORACLE_HOME/dbs/init$ORACLE_SID.ora(9i,10g默认不使用) $ORACLE_BASE/admin/$ORACLE_SID/pfile/init.ora.xxxx(10g初始化时使用一次) 。
spfile类型 --- 二进制文件 $ORACLE_HOME/dbs/spfile$ORACLE_SID.ora,服务器端(9i开始使用) 能够被rman备份(rman只能备份二进制文件) 。
oracle启动时,查找顺序为spfile<sid>.ora-----spfile.ora-----init<sid>.ora 。
转化: create pfile[='fpath'] from spfile; 默认在$ORACLE_HOME/dbs/init$ORACLE_SID.ora 。
create spfile[='fpath'] from pfile; 默认在$ORACLE_HOME/dbs/spfile$ORACLE_SID.ora 。
create spfile[='fpath'] from memory; 从内存中重建spfile 。
10g指定用pfile启动:
1
2
|
>startup pfile=
'$ORACLE_HOME/dbs/init$ORACLE_SID.ora'
;
>create spfile from pfile;
|
这样可以将刚修改的pfile生效 。
查看当前使用的参数文件:
1
|
>show parameter spfile;
|
如果value值为空,说明是使用pfile,否则使用的是value显示的spfile 。
1
|
>
select
distinct ISSPECIFIED from
v
$spparameter;
|
值为true是spfile,false是pfile 。
spfile文件的修改:
alter system|session set parameter_name=values scope=memory|spfile|both sid='<sid>'|'*',
system ---- v$parameter中列isses_modifiable为非flase的项可以被alter session修改 session ---- v$parameter中列issys_modifiable为非flase的项可以被alter system修改 【select name,isses_modifiable,issys_modifiable from v$parameter;】 查询出来的状态包括三种: immdiate----动态参数,system直接修改到内存和参数文件,立即生效 false----静态参数,不能直接改,system加scope=spfile修改到参数文件 deferred----会话参数,可以使用session修改,只对当前实例有效 。
memory ---- 只对当前启动的实例有效,下次启动无效 spfile ---- 只对spfile修改,不影响当前实例,下次启动生效 both ---- 内存和spfile都修改,默认值 。
<sid> ---- 当前实例 * ---- 所有实例,用于集群环境有多个实例 。
10g中常见参数:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
orcl.__db_cache_size=889192448
orcl.__java_pool_size=16777216
orcl.__large_pool_size=16777216
orcl.__shared_pool_size=285212672
orcl.__streams_pool_size=0
*.audit_file_dest='/u01/oracle/admin/orcl/adump' ---> 警告日志
*.background_dump_dest='/u01/oracle/admin/orcl/bdump' ---> 后台进程日志
*.compatible='10.2.0.1.0' ---> 版本向后兼容号
*.control_files='/u01/oracle/oradata/orcl/control01.ctl','/u01/oracle/oradata/orcl/control02.ctl','/u01/oracle/oradata/orcl/control03.ctl' --->控制文件
*.core_dump_dest='/u01/oracle/admin/orcl/cdump' ---> 服务器进程日志
*.db_block_size=8192 --->oracle内存块大小
*.db_domain='' --->域名
*.db_file_multiblock_read_count=16 --->单词IO可以读取多少块
*.db_name='orcl' --->和db_domain构成globename
*.db_recovery_file_dest='/u01/oracle/flash_recovery_area' --->备份日志,OMF的管理文件存放路径
*.db_recovery_file_dest_size=2147483648 --->flash_recovery_area目录大小
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)' --->共享服务器的参数
*.job_queue_processes=10 --->当前作业进程数
*.local_listener='LISTENER_ORCL' --->本地监听服务
*.open_cursors=300 --->打开游标个数
*.pga_aggregate_target=407896064 --->pga大小
*.processes=150 --->当前可以运行多少进程
*.remote_login_passwordfile='EXCLUSIVE' --->远程登录是否需要密码文件,none|shared|exclusive
*.sga_target=1223688192 --->sga大小(10g)
*.undo_management='AUTO' --->undo表空间的管理方式
*.undo_tablespace='UNDOTBS1' --->ndo表空间
*.user_dump_dest='/u01/oracle/admin/orcl/udump' --->用户进程日志
|
隐藏参数:
1
|
select
ksppinm,ksppstvl from x$ksppi a,x$ksppcv b where a.indx=b.indx
|
显示系统中的隐藏参数 。
spfile重置参数默认值:
alter system reset 参数 scope=spfile sid='<sid>'|'*',
最后此篇关于Oracle数据库中的控制文件管理以及常用参数设置的文章就讲到这里了,如果你想了解更多关于Oracle数据库中的控制文件管理以及常用参数设置的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
简而言之:我想从可变参数模板参数中提取各种选项,但不仅通过标签而且通过那些参数的索引,这些参数是未知的 标签。我喜欢 boost 中的方法(例如 heap 或 lockfree 策略),但想让它与 S
我可以对单元格中的 excel IF 语句提供一些帮助吗? 它在做什么? 对“BaselineAmount”进行了哪些评估? =IF(BaselineAmount, (Variance/Baselin
我正在使用以下方法: public async Task Save(Foo foo,out int param) { ....... MySqlParameter prmparamID
我正在使用 CodeGear RAD Studio IDE。 为了使用命令行参数测试我的应用程序,我多次使用了“运行 -> 参数”菜单中的“参数”字段。 但是每次我给它提供一个新值时,它都无法从“下拉
我已经为信用卡类编写了一些代码,粘贴在下面。我有一个接受上述变量的构造函数,并且正在研究一些方法将这些变量格式化为字符串,以便最终输出将类似于 号码:1234 5678 9012 3456 截止日期:
MySql IN 参数 - 在存储过程中使用时,VarChar IN 参数 val 是否需要单引号? 我已经像平常一样创建了经典 ASP 代码,但我没有更新该列。 我需要引用 VarChar 参数吗?
给出了下面的开始,但似乎不知道如何完成它。本质上,如果我调用 myTest([one, Two, Three], 2); 它应该返回元素 third。必须使用for循环来找到我的解决方案。 funct
将 1113355579999 作为参数传递时,该值在函数内部变为 959050335。 调用(main.c): printf("%d\n", FindCommonDigit(111335557999
这个问题在这里已经有了答案: Is Java "pass-by-reference" or "pass-by-value"? (92 个回答) 关闭9年前。 public class StackOve
我真的很困惑,当像 1 == scanf("%lg", &entry) 交换为 scanf("%lg", &entry) == 1 没有区别。我的实验书上说的是前者,而我觉得后者是可以理解的。 1 =
我正在尝试使用调用 SetupDiGetDeviceRegistryProperty 的函数使用德尔福 7。该调用来自示例函数 SetupEnumAvailableComPorts .它看起来像这样:
我需要在现有项目上实现一些事件的显示。我无法更改数据库结构。 在我的 Controller 中,我(从 ajax 请求)传递了一个时间戳,并且我需要显示之前的 8 个事件。因此,如果时间戳是(转换后)
rails 新手。按照多态关联的教程,我遇到了这个以在create 和destroy 中设置@client。 @client = Client.find(params[:client_id] || p
通过将 VM 参数设置为 -Xmx1024m,我能够通过 Eclipse 运行 Java 程序-Xms256M。现在我想通过 Windows 中的 .bat 文件运行相同的 Java 程序 (jar)
我有一个 Delphi DLL,它在被 Delphi 应用程序调用时工作并导出声明为的方法: Procedure ProduceOutput(request,inputs:widestring; va
浏览完文档和示例后,我还没有弄清楚 schema.yaml 文件中的参数到底用在哪里。 在此处使用 AWS 代码示例:https://github.com/aws-samples/aws-proton
程序参数: procedure get_user_profile ( i_attuid in ras_user.attuid%type, i_data_group in data_g
我有一个字符串作为参数传递给我的存储过程。 dim AgentString as String = " 'test1', 'test2', 'test3' " 我想在 IN 中使用该参数声明。 AND
这个问题已经有答案了: When should I use "this" in a class? (17 个回答) 已关闭 6 年前。 我运行了一些java代码,我看到了一些我不太明白的东西。为什么下
我输入 scroll(0,10,200,10);但是当它运行时,它会传递字符串“xxpos”或“yypos”,我确实在没有撇号的情况下尝试过,但它就是行不通。 scroll = function(xp
我是一名优秀的程序员,十分优秀!