热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Oracle数据库服务器参数文件管理教程

一、在启动的时候指定参数文件。在启动数据库的过程中,必须要提供一个准确的初始化参数文件,无论是文本参数文件还是服务器参数文件。在利用Startup命令启动数据库的时候,可以指定其采用的服务器参数文件。不过在这里需要注意一个细节,即采用的初始化参数文件不同,其采用的关键字也是不同的。如果采用的是服务器参数文件,则需要使用SPfile指定;如果采用的是文本参数文件,则需要使用

一、在启动的时候指定参数文件。

  在启动数据库的过程中,必须要提供一个准确的初始化参数文件,无论是文本参数文件还是服务器参数文件。在利用Startup命令启动数据库的时候,可以指定其采用的服务器参数文件。不过在这里需要注意一个细节,即采用的初始化参数文件不同,其采用的关键字也是不同的。如果采用的是服务器参数文件,则需要使用SPfile指定;如果采用的是文本参数文件,则需要使用Pfile关键字指定。数据库系统并不会自动根据参数文件的类别来进行判断,而是根据这个关键字来判断。如果发生张冠李戴现象的话,即使这个初始化参数文件本身没有问题,但是因为关键字使用错误,会误导数据库启动进程,从而导致数据库启动错误。

  Oracle数据库初始化参数更改的注意事项

  如果在利用命令startup启动数据库(如数据库自动随操作系统启动而自动启动)的过程中没有指定采用的初始化参数文件,则数据库系统会自动在默认的位置进行查找。一般情况下,其先查找是否有服务器参数文件(二进制文件),如果有的话则会启用。如果没有的话,则会继续查找是否有文本参数文件。如果有责启用,如果没有的话则会向用户提示启动失败。所以在默认情况下是服务器参数文件优先的。如果数据库管理员要让数据库自动启动的时候采用文本参数文件,则就需要在关闭数据库后删除那个服务器参数文件,或者将其移动到其他的位置。然后下次重新启动时在没有指定初始化参数文件时而自动采用文本参数文件。对于数据库系统来说,采用服务器参数文件还是采用文本参数文件,没有多大的区别。只要保证他们的内容准确即可。所以到底是采用哪种参数文件为好,就全凭数据库管理员的工作喜好了。

  二、服务器参数文件的维护。

  虽然说也可以利用文本编辑器来打开二进制形式的服务器参数文件,并查看相关的内容。但是需要注意的是,切不可在这里对此进行更改。也就是说不能够手工更改这个服务器参数文件。由于二进制文件与文本文件保存方式的不同。在这里直接进行更改的话,则会导致这个初始化参数文件损坏,而导致数据库无法正常启动。为此如果要更改服务器参数文件,最好是将其转换为文本参数文件后进行更改。更改完成后直接使用文本参数文件启动或者转换为服务器参数文件再启动数据库系统。

  在Oracle中实现控制文件多路复用

  另外就是直接通过命令来进行更改。这里需要注意的是,存储在服务器参数文件中的初始化参数是永久保留的。也就是说,在数据库运行的过程中,通过命令对参数所做的任何更改,在数据库关闭后是会被保存在服务器的初始化文件中。为此数据库管理员不用担心数据库重新启动后参数丢失的问题。

  三、导出服务器参数文件。

  在数据库部署完成之后或者对初始化参数文件进行修改之前,管理员都需要对参数文件进行备份。无论是服务器参数文件还是文本参数文件,这个备份都是免不了的。因为任何数据库管理员都不能够保证在以后这个参数文件是否会出现损坏的情况。未雨绸缪,对服务器参数文件或者文本参数文件进行备份是提高数据库安全的一个重要举措。其次,有时候在排除数据库故障时候,也需要导出这个数据库服务器参数文件。因为将这个文件导出后,可以利用文本编辑器来方便的查询所有的初始化参数,以分析故障的原因。虽然在数据库的SQL*PLUS等工具中也可以查看这些初始化参数,但是操作起来不是很方便。所以不少管理员喜欢将他们导成文本文件来进行分析。最后,对服务器参数文件进行更改。由于不能够通过文本编辑器直接对二进制的服务器参数文件进行更改,为此数据库管理员往往会将将服务器参数文件导出来,然后再利用数据库提供的命令将其转换为文本文件。最后再将其转换为服务器参数文件,并利用其启动。有时候,在重新部署数据库之前管理员也会先导出这个服务器参数文件,以方便后续重新使用这个服务器参数文件来启动数据库。

  在导出数据库服务器参数文件的时候,主要需要注意以下几点。

  首先,需要具有相关的权限。根据Oracle数据库的要求,如果要导出数据库服务器参数文件的话,必须需要数据库的SYSDBA或者SYSOPER权限。如果用户没有类似权限的话,那么在利用命令导出服务器参数文件过程中,会出现“权限不足”的错误提示。 其次,可以直接直接利用命令create pfile from spfile命令,将服务器参数文件导出为文本文件。在导出的时候,不需要关闭原有的例程。如果没有指定目录与名称的话,则数据库会存放在不同的目录中。这里主要需要注意这个名称。因为在不同的操作系统平台上,其采用的名称是不同的。即在没有指定导出文件名称的话,数据库会采用平台特定的名称,并于据平台特定的默认服务器参数文件进行创建。有时候为了方便起见,可以在命令中指定存储的路径。如要指定路径的话,需要采用=号和单引号。如采用pfile=’路径名’的形式。

  第三,在导出的过程中,服务器还会将原先二进制文件中的一些行注释也导出到文本文件中,以方便管理员进行略读。同理,在将文本文件转换为二进制的服务器参数文件时,也会将行注释存储在二进制文件中。不过其只保存行注释,而不会保存其他的注释。此时再将二进制服务器参数文件转换为文本参数文件时,原先的其他注释也会丢失,只会保存行注释。所以在初始化参数文件中编写注释的时候,最好采用行注释。只有这个行注释才会在转换的过程中被永久的保留。

  四、创建服务器参数文件。

  当服务器参数文件出现损坏而无法启动数据时,就有可能需要重新创建服务器参数文件。上面笔者已经强调过好几次,服务器参数文件是无法手工编辑与创建的。为此必须通过文本参数文件来创建服务器参数文件。为了在服务器参数文件出现损坏时有一个补救,最好在平时将服务器参数文件进行备份,或者将其导出为文本参数文件。然后再必要的时候,根据这个文本参数文件来创建服务器参数文件。虽然可以手工创建文本参数文件,但是这个工作太复杂,不是轻易可以完成的。如果对其进行小修小改还行,但是若要将其从零开始创建,可是一个很浩大的工程,基本上是一项不可能完成的任务。

  若要根据文本参数文件来转换成服务器参数文件,可以使用数据库提供的命令:Create Spfile=’’ from pfile=’’来完成。如果没有指定服务器参数文件的名字与路径的话,数据库xiotng 采用的是平台特定的名称,并保存在数据库的默认位置中。然后数据库管理员就可以利用Startup命令来启动了。当保存在默认位置时,可以不加参数即启用这个服务器参数文件。因为默认情况下,这个服务器参数文件要比文本参数文件优先级高。

  最后需要说明的一点是即使是文本参数文件,数据库管理员要读懂这个文件中的内容,仍然需要一定的功底。为此笔者建议管理员,以后若更改系统的默认参数的话,最好加上注释,以利于提高这个文本参数文件的可读性。如此的话,在利用这个文件排除故障与改善数据库性能使会变得相对简单一点,有利于提高这个文本参数文件的可读性。

推荐阅读
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 优化联通光猫DNS服务器设置
    本文详细介绍了如何为联通光猫配置DNS服务器地址,以提高网络解析效率和访问体验。通过智能线路解析功能,域名解析可以根据访问者的IP来源和类型进行差异化处理,从而实现更优的网络性能。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 三星W799在2011年的表现堪称经典,以其独特的双屏设计和强大的功能引领了双模手机的潮流。本文详细介绍其配置、功能及锁屏设置。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • 使用C#开发SQL Server存储过程的指南
    本文介绍如何利用C#在SQL Server中创建存储过程,涵盖背景、步骤和应用场景,旨在帮助开发者更好地理解和应用这一技术。 ... [详细]
  • 360SRC安全应急响应:从漏洞提交到修复的全过程
    本文详细介绍了360SRC平台处理一起关键安全事件的过程,涵盖从漏洞提交、验证、排查到最终修复的各个环节。通过这一案例,展示了360在安全应急响应方面的专业能力和严谨态度。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 解决MongoDB Compass远程连接问题
    本文记录了在使用阿里云服务器部署MongoDB后,通过MongoDB Compass进行远程连接时遇到的问题及解决方案。详细介绍了从防火墙配置到安全组设置的各个步骤,帮助读者顺利解决问题。 ... [详细]
  • 本文详细介绍了 MySQL 中 LAST_INSERT_ID() 函数的使用方法及其工作原理,包括如何获取最后一个插入记录的自增 ID、多行插入时的行为以及在不同客户端环境下的表现。 ... [详细]
  • 本文介绍了ArcXML配置文件的分类及其在不同服务中的应用,详细解释了地图配置文件的结构和功能,包括其在Image Service、Feature Service以及ArcMap Server中的使用方法。 ... [详细]
author-avatar
书友36110188
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有