当前位置首页 > 计算机 > 数据库/结构与算法
搜柄,搜必应! 快速导航 | 使用教程  [会员中心]

Linux操作系统中Oracle11g数据库安装规范

文档格式:DOC| 33 页|大小 2.98MB|积分 10|2021-11-27 发布|文档ID:42753490
第1页
下载文档到电脑,查找使用更方便 还剩页未读,继续阅读>>
1 / 33
此文档下载收益归作者所有 下载文档
  • 版权提示
  • 文本预览
  • 常见问题
  • 硬件平台PC ServerLinux操作系统中Oracle11g数据库安装规范DBA支持人员名单联系电话操作系统RHEL 5u5数据库及版本Oracle 11.2.0.2IT运行中心Linux操作系统中Oracle11g数据库安装规范编制人授权人:版本号v1.1生效日期:2011-03-11版权说明本文件中包含的任何文字叙述、文档格式、插图、照片、方法、过程等内容,除另有特别注明,版权均属太平洋保险所有未经许可任何人不得将此文件中的任何部分以任何形式进行复制,储存和传播版本记录版本号日 期修 改 者说 明文 件 名v1.02011-03-11滕培瑜初始编写Linux操作系统中Oracle11g数据库安装规范v1.12011-04-11丁靖安调整格式、修订、扩充Linux操作系统中Oracle11g数据库安装规范 Linux操作系统中Oracle11g数据库安装规范第一部分:文档信息序号行动类型人员修改日期修改原因审核人员备注1创建滕培瑜2011-3-11初始编写2修改丁靖安2011-4-11调整格式、修订、扩充部分内容第二部分:数据库安装软件(含补丁)的下载说明Oracle数据库安装软件获得途径:1、内网ftp服务器(匿名登录):ftp://10.193.16.86/oracle/db/11.2.0.2/linux/x86目录下各个zip文件(32位Linux操作系统平台)ftp://10.193.16.86/oracle/db/11.2.0.2/linux/x64目录下各个zip文件(64位Linux操作系统平台)2、Oracle官方网站下载:(从11.2.0.2开始ORACLE不再提供升级patch,只提供完整的安装包)第三部分:数据库版本规定本安装规范所针对的Oracle数据库版本为:Oracle 11.2.0.2.0第四部分:系统要求1、硬件要求作为生产系统的Oracle数据库服务器的PC Server,硬件要求至少为:4CPU、8GB 内存,交换区(SWAP)按照操作系统推荐配置,根据内存大小,为物理内存的0.75-1.5倍。

    PC Server内置磁盘阵列必须足够支持设置合适的RAID方式及Hotspare热备盘数据库存储要求尽量在外部存储上,创建单独的vg如果外部存储使用光纤存储,则要求HBA卡至少配置两块,用作冗余和负载均衡数据库安装对文件系统的需求:软件:至少4.5GB数据库文件:至少2GB临时目录(/tmp):至少1GB2、操作系统版本及补丁矩阵Oracle 11gR2要求OS至少为RHEL5.2,内核为Kernel 2.6.18-92作为生产系统,我们要求使用RHEL 5u5 64位版本,即:Red Hat Enterprise Linux AS release 5 Update 5 x86_64如果是其它用途,PC Server实在比较老,cpu是32位的,则使用RHEL 5u5 32位版本,即:Red Hat Enterprise Linux AS release 5 Update 5 i686 需要安装以下RPM软件包(加32bit括号注解的是该软件包32位版本,对应同名未加注解的则是该软件包64位版本在64位版本平台上,两种版本都要安装;在32位版本平台上,则不安装64位版本软件包):binutils-2.17.50.0.6compat-libstdc++-33-3.2.3compat-libstdc++-33-3.2.3 (32 bit)elfutils-libelf-0.125elfutils-libelf-devel-0.125gcc-4.1.2gcc-c++-4.1.2glibc-2.5-24glibc-2.5-24 (32 bit)glibc-common-2.5glibc-devel-2.5glibc-devel-2.5 (32 bit)glibc-headers-2.5ksh-20060214libaio-0.3.106libaio-0.3.106 (32 bit)libaio-devel-0.3.106libaio-devel-0.3.106 (32 bit)libgcc-4.1.2libgcc-4.1.2 (32 bit)libstdc++-4.1.2libstdc++-4.1.2 (32 bit)libstdc++-devel 4.1.2make-3.81numactl-devel-0.9.8.x86_64sysstat-7.0.2unixODBC-2.2.11unixODBC-2.2.11 (32 bit)unixODBC-devel-2.2.11unixODBC-devel-2.2.11 (32 bit)3、其他需要的软件列表 无4、网络配置要求在生产环境中要求尽量使用2块千/百兆网卡做绑定,预防网卡、网线、端口、单个网络交换机带来的单点故障。

    第五部分:系统参数调整及说明1、 调整内核参数及用户限制以下所有相关操作需要root用户执行,并且重启动操作系统才能完全生效1) 编辑/etc/sysctl.conf文件,设置相关参数的系统默认值如果该文件中已有相关参数的设置,则确保参数值不小于如下对应值;如果还没有相关参数的设置,则按照如下格式添加相应的参数设置行fs.aio-max-nr = 1048576fs.file-max = 6815744kernel.shmall = 2097152kernel.shmmax = 4294967295kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048586net.ipv4.tcp_wmem = 262144 262144 262144net.ipv4.tcp_rmem = 4194304 4194304 41943042) 编辑/etc/security/limits.conf文件,修改操作系统对oracle用户资源的限制。

    在该文件中添加如下行oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536oracle hard stack 102402、 开启操作系统异步IO(AIO)前面第四部分第2点需要安装的包已经包含了libaio-0.3.106,默认开启异步I/O检查在操作系统中AIO是否运行,运行命令及显示结果类似如下:$ cat /proc/slabinfo | grep kiokioctx 51 120 320 12 1 : tunables 54 27 8 : slabdata 10 10 0kiocb 30 30 256 15 1 : tunables 120 60 8 : slabdata 2 2 0注:如数据库使用的是文件系统,且要使用异步IO,则需要修改该数据库的初始化参数a) 设置disk_asynch_io参数值为TRUE(默认值)b) 设置filesystemio_options参数值为ASYNCH第六部分: 目录结构及空间规划1、 存储设置PC Server的数据库存储一般不会使用高端存储(vg物理分区推荐为32M),所以vg物理分区(PE Size)大小为操作系统安装时默认的32M,或者256M(中低端存储vg物理分区推荐值)均可。

    2、 临时目录/tmp:至少1GB空间,推荐5GB,用于存放Oracle软件安装时产生的日志3、 交换区要求交换区(SWAP):按照操作系统推荐配置,根据内存大小,为物理内存的0.75-1.5倍推荐:创建2个大小相同、且分布在不同盘(pv)上的SWAP空间4、 数据库软件安装目录Oracle软件安装目录建议设置为单独的文件系统,挂载的目录名定为/u01,实际安装的主目录为/u01/oracle,大小一般配置为20GB,目录的owner要求为oracle:oinstall5、 数据库的空间规划Oracle数据库空间用表空间(tablespace)表示,如默认的:SYSAUX、SYSTEM、TEMP、UNDOTBS1、USERS等;表空间的组成单位是数据文件(datafile)我们定义基于文件系统的文件来创建Oracle的数据文件,并定义回滚表空间、临时表空间和数据表空间单个数据文件的大小为8G或16G数据库使用的文件目录及相应用途和对应文件系统大小规划如下(假设数据库名称为pgud,在实际操作中,斜体的pgud需要替换为实际定义的数据库名):/pgud/pgud_u01/pgud:存放系统表空间的数据文件、redo log文件、控制文件,建议20G/pgud/pgud_u02/pgud:存放redo log文件、回滚表空间的数据文件、控制文件,建议50G/pgud/pgud_u03/pgud:存放临时表空间的数据文件、控制文件,建议50G/pgud/pgud_u04/pgud:存放数据表空间的数据文件,建议50G的倍数(根据数据量)……/pgud/pgud_umn/pgud:存放数据表空间的数据文件(mn为顺序中最后一个编号),建议50G的倍数注意:以上文件系统挂载在二级目录上,即,挂载的目录是:/pgud/pgud_u01、/pgud/pgud_u02、/pgud/pgud_u03、/pgud/pgud_u04、……、/pgud/pgud_umn。

    另外,根据实际使用需要,还可能要有用于归档日志和用于闪回区的文件目录和对应文件系统:/oraarchivelog/pgud:归档目录,建议30GB/oraflashback/pgud:闪回区目录,建议50GB(至少2天的归档文件大小)如果需要将数据库备份到硬盘,则要创建用于存放数据库备份的文件目录及文件系统:/orabackup/pgud:备份目录,根据将来数据量大小,建议大于数据表空间容量如果需要将归档日志和redo log复写,则要创建用于存放第二份归档日志和redo log的文件目录及文件系统:/oramultiple/pgud:复写目录,建议30GB注意:以上文件系统挂载在一级目录上,即,挂载的目录是:/oraarchivelog、/oraflashback、/orabackup、/oramultiple以上所有目录的owner要求为oracle:oinstall第七部分:数据库软件的安装和数据库的创建配置1、 数据库安装用户及所在组的创建使用root用户,进行如下操作:创建oinstall组 组名:oinstall gid:400创建dba组 组名:dba gid:401创建oper组 组名:oper gid:402创建oracle用户 用户名:oracle uid:400 主目录为/home/oracle,主组为oinstall组,并且同时属于dba组使用oracle用户登录,必要的话修改初始密码,确认用户可用。

    2、 数据库安装用户的profile文件的设置首先确定数据库名及数据库实例名,对于单实例(非RAC)环境下,两者一般是一致的注意:必须为全部小写字母,长度小于等于8对于分公司,一般这样定义数据库(实例)名:取分公司名第一个字的拼音前2位和第二个字的拼音第1位,产险在最前面加上property的首字母p,寿险在最前面加上life的首字母l,比如产险广东分公司的数据库(实例)名就叫pgud假设数据库(实例)名为pgud,主机名为sxjsdb,使用oracle用户,编辑/home/oracle/.bash_profile,加入以下内容(在实际操作中,斜体的pgud和cxjsdb需要替换为实际定义的数据库(实例)名和实际的主机名):# Oracle DB 11g Environmentexport TMP=/tmpexport TMPDIR=$TMPexport ORACLE_BASE=/u01/oracleexport ORACLE_HOME=$ORACLE_BASE/product/db11gr2export ORACLE_SID=pgudexport ORACLE_HOSTNAME=cxjsdbexport ORACLE_UNQNAME=pgudexport NLS_LANG=AMERICAN_AMERICA.AL32UTF8export ORACLE_TERM=xtermexport ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/dataexport LIBPATH=$ORACLE_HOME/lib:$ORACLE_HOME/ctx/libexport LD_LIBRARY_PATH=$ORACLE_HOME/lib32:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib:$ORACLE_HOME/RDBMS/lib:/lib:/usr/libexport ORACLE_DOC=$ORACLE_HOMEexport PATH=$ORACLE_HOME/bin:$PATH:/usr/sbin:/usr/local/binexport CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlibexport NLS_DATE_FORMAT=yyyy-mm-dd hh24:mi:ssexport EDITOR=vistty erase ^H3、 创建相应的文件系统(或安装目录)并改变相应的权限使用root用户,进行如下操作:创建lv,lv名字为lvoracle,大小为20GB,并在lv上创建文件系统,挂载的目录名为/u01,并创建/u01/oracle,用于安装Oracle数据库软件。

    根据前面第六部分第5点的数据库空间规划,创建相应大小的lv,并在lv上创建文件系统,挂载到对应的目录下(假设数据库名称为pgud,在实际操作中,斜体的pgud需要替换为实际定义的数据库名,归档、闪回、备份和复写用的文件系统根据实际需要创建,备份和复写要求尽量和其它分开在不同的存储上,如果只有一份存储,则备份要及时传输到异地,复写意义不大)lv名字、大小、对应的文件系统挂载目录如下:lvpgud_u01 20G /pgud/pgud_u01lvpgud_u02 50G /pgud/pgud_u02lvpgud_u03 50G /pgud/pgud_u03lvpgud_u04 50*nG /pgud/pgud_u04……lvpgud_umn 50*nG /pgud/pgud_umnlvoraarc 30G /oraarchiveloglvorafla 50G /oraflashbacklvorabak ???G /orabackuplvoramlt 30G /oramultiple挂载后,在每个挂载目录下创建和数据库名相同的目录名将以上目录owner修改为oracle:oinstall。

    4、 安装的详细步骤使用oracle用户进行1) 将Oracle软件包以 bin方式ftp到数据库服务器,建议放到/u01/oracle/software目录下2) 解包cd /u01/oracle/softwareunzip所有的.zip文件3) 安装需要在图形界面(在控制台或者用X-Window工具软件)打开一个终端窗口,执行如下命令进行安装:cd /u01/oracle/software/database./runInstaller4) 类似如下内容显示后,图形界面启动Starting Oracle Universal Installer...Checking Temp space: must be greater than 120 MB. Actual 1812 MB PassedChecking swap space: must be greater than 150 MB. Actual 24575 MB PassedChecking monitor: must be configured to display at least 256 colors. Actual 16777216 PassedPreparing to launch Oracle Universal Installer from /tmp/OraInstall2010-10-02_12去掉I wish to receive security updates via My Oracle Surrport选项,点击Next。

    选择Skip software updates,点击Next选择Install database software only,点击Next选择Single instance database installation,点击Next在Available Languages中点选English、Simplified Chinese、Traditional Chinese,点击两个框中间的>,将选中的语言加入到右边的Selected Languages中,然后点击Next按照实际情况选择版本,点击Next点击Next将Invetory Directory修改为/u01/oracle/oraInventory, 点击Next点击Next确认右上方显示为All minimum requirements are satisfied. You may proceed with the installation.后(否则需要进行相关的调整来满足条件后,点击Check Again重新验证),点击Next点击Install在安装过程中会提示以root身份执行2个脚本,需要在另外的窗口中操作完成后,点击OK。

    安装完成,点击Close 5、 数据库监听器配置为了远程访问数据库,需要配置数据库监听器(listener)配置可以通过netmgr或者netca图形工具进行,也可以通过手工编辑$ORACLE_HOME/network/admin/listener.ora文件进行netca只能做简单配置(动态注册),手工编辑容易写错格式,建议使用netmgr工具监听器的配置使用oracle用户进行,按下面步骤配置1) 在图形界面(在控制台或者用X-Window工具软件),打开一个终端窗口,执行如下命令:netmgr2) Oracle Net Manager图形界面启动点击左边树状图的加号,逐层打开,直到Listeners下的每个具体listener名称3) 最左上方的+号和x号分别用来添加和删除,添加时只要输入新listener的名字4) 在右方进行端口号、主机名、数据库实例信息的配置注意:1) 监听器的名称如果主机上只有一个数据库实例,可以配置一个缺省的LISTENER,如果有多个数据库实例,则建议为每个实例配置一个监听器,名称用LISTENER_数据库实例名2) 监听端口建议不要采用缺省的1521。

    3) 主机名建议采用IP地址,不要采用主机名称4) 数据库注册到监听器建议不要用动态注册,而是采用静态注册,即在监听器中配置具体的数据库实例信息6、 创建数据库并进行相关的配置首先,按照前面第六部分第5点的规划,用root用户创建好数据库使用的文件系统并挂载好,并将目录owner修改为oracle:oinstall数据库的创建使用oracle用户进行(假设数据库名称为pgud,在实际操作中,斜体的pgud需要替换为实际定义的数据库名),按下面步骤创建数据库1) 安装需要在图形界面(在控制台或者用X-Window工具软件)打开一个终端窗口,执行如下命令:dbca2) Database Configuration Assistant图形界面启动标题同时指明了步骤的编号和步骤的名称在步骤名称为Welcome的欢迎窗口,直接点击next3) 在接下来的每一个步骤窗口按照如下要求进行操作,未说明的部分保留默认选项/默认值不做改动,点击next进入下一窗口:Operations不做变动Database Templates选择Custom DatabaseDatabase IdentificationGlobal Database Name框:输入前面确定的数据库名pgudSID框:自动出现和数据库名相同的内容作为数据库实例名,单实例情况下不作改动Management OptionsEnable Daily Disk Backup to Recovery Area如果想配置每天定时将数据库自动备份到磁盘上的快速恢复区(具体位置在后面Recovery Configuration步骤配置),则可以勾选,勾选后下方由灰色变为可用:Backup Start Time:调整定时备份的开始时间OS Username框:输入对快速恢复区具有写入权限的操作系统用户名OS Password框:输入上面操作系统用户的密码建议创建完数据库统一配置备份策略,此处保持不勾选Database CredentialsUse Different Administrative Passwords表格的Password和Confirm Password列中分别为User Name列SYS、SYSTEM、DBSNMP和SYSMAN用户输入口令并重复一次输入(如密码设置过于简单,下一步前会有弹出窗口提示确认接受安全风险)Database File LocationsStorage Locations:选择Use Common Location for All Database FilesDatabase File Location框:输入/pgud/pgud_u01Recovery ConfigurationSpecify Fast Recovery Area如果前面Management Options步骤选择了自动备份,则保留勾选,并在下方:Fast Recovery Area框:修改为快速恢复区的目录名Fast Recovery Area Size框:调整快速恢复区的大小建议创建完数据库统一配置备份策略,此处去除勾选Enable Archiving根据是否归档日志的实际需求决定是否选择(分公司可以考虑非日志模式,但是缺陷是无法进行在线的数据库热备份,只能离线全备份)一般保持默认勾选点击旁边的Edit Archive Mode Parameters…,在弹出窗口中:Automatic Archiving:保持默认勾选Archive Log File Format框:修改为%t_%s_%r.arcArchive Log Destinations表格:第一行中输入/oraarchivelog/pgud(如果创建了单独的复写目录,则还要在第二行中输入/oramultiple/pgud)点击OK返回主窗口Database ContentDatabase Components页面保留勾选Enterprise Manager Repository,去除其余所有的勾选项点击Standard Database Components…,在弹出窗口中:去除所有的选项,对于弹出的警告点击Yes点击OK返回主窗口Initialization ParametersMemory页面保留默认的Typical选项(Memory Size (SGA and PGA)框取值大小必须小于/dev/shm大小,否则会有弹出窗口告警要求调整)保留勾选Use Automatic Memory ManagementSizing页面Block Size:保留默认的8192字节Processes框:先修改为300,今后根据应用实际修改连接数Character Sets页面Database Character Set栏:选择Use Unicode (AL32UTF8)National Character Set:选择UTF8Default Language:选择American(默认值)Default Territory:选择United States(默认值)Connection Mode页面保留默认的Dedicated Server ModeDatabase Storage由于图形界面繁琐,应用用户的表空间后续通过命令创建,此处不做。

    注意:表空间的大小、包含数据文件的文件名称、路径、初始大小、是否自增长和redo log组的数量、成员的路径、大小等都需要根据应用系统的具体情况配置建议USERS表空间为128M;一般几百G的中等数据库情况下,建议SYSTEM表空间为1G,SYSAUX表空间为2G;对于大型数据库,数据量大于1T 的,建议SYSTEM表空间为2G,SYSAUX表空间为4G;更大型的数据库,数据量大于3T的,建议SYSTEM表空间为4Gredo log一般设置3-5组,每组尽量2个成员,每个成员大小可以从100M到1G,一般几百G的中等数据库情况下,建议为200M下面以一般情况为例:左边树状图点击Controlfile,在右边进一步配置:General页面将表格File Name列和File Directory列前三行分别按顺序调整为:control01.ctl /pgud/pgud_u01/{DB_UNIQUE_NAME} /control02.ctl /pgud/pgud_u02/{DB_UNIQUE_NAME} /control03.ctl /pgud/pgud_u03/pgud/Options页面Maximum Datafiles:修改为4096Maximum Redo Log Files:修改为128Maximum Log Members:修改为5左边树状图点击Datafiles旁的加号,展开后依次点击下面每一个datafile,在右边进一步配置:General页面Name框:调整文件全路径名称(注意修改后再次点别的datafile树状图会重新排序)Size栏File Size框:调整文件大小Storage页面Automatically extend datafile when full (AUTOEXTEND)根据是否自扩展调整是否勾选,勾选后下方由灰色变为可用:Increment框:调整每次扩展大小值为统一的10240KMaximum Size栏:选择Value框并输入最大值为统一的8192M具体每个datafile的各项配置见如下清单(注意原值中有的u01要改成u02或u03):全路径名称 大小 是否自扩展/pgud/pgud_u01/{DB_UNIQUE_NAME}/sysaux01.dbf 2048M 是 /pgud/pgud_u01/{DB_UNIQUE_NAME}/system01.dbf 1024M 是/pgud/pgud_u02/{DB_UNIQUE_NAME}/temp01.dbf 8192M 否/pgud/pgud_u03/{DB_UNIQUE_NAME}/undotbs01.dbf 8192M 否/pgud/pgud_u01/{DB_UNIQUE_NAME}/users01.dbf 128M 是左边树状图点击Redo Log Groups旁的加号,展开后依次点击下面每一个日志组号,在右边进一步配置:General页面File Size框:调整文件大小,建议为204800KRedo Log Members表格:将File Name列和File Directory列前两行分别按顺序调整为:redo0na.log /pgud/pgud_u01/{DB_UNIQUE_NAME}redo0nb.log /pgud/pgud_u02/{DB_UNIQUE_NAME}注意,n为对应的日志组号,实际填写值为1、2或3(如果创建了单独的复写目录,则第二行File Directory列转为调整为/oramultiple/pgud)3组日志调整完后,点击左边树状图下方的Create,在弹出窗口中:类似前3组配置(窗口中File Directory列默认值从{DB_UNIQUE_NAME}变为pgud,不用修改)点击Create创建第4个日志组类似创建第5个日志组Creation OptionsGenerate Database Creation Scripts:勾选点击Finish按钮在弹出的Confirmation确认窗口中,确认各项配置正确后,点击OK按钮4) dbca根据配置自动创建数据库。

    在弹出的创建脚本成功信息窗口中,点击OK按钮等待安装进度条完成在弹出的信息确认窗口中,记录好em的网址(https://主机名:端口号/em),然后点击Exit按钮7、 数据库参数配置1) 修改spfile中的参数修改参数的命令是:alter system set 参数名 = 值 scope=spfile;(值如果是字符串要用单引号括起来)需要修改的参数和建议取值如下:control_file_record_keep_time 30session_cached_cursors 100db_files 512 (小于4T的数据库) 1024 (大于4T小于8T的数据库) 4096 (大于8T的数据库)processes 300 (8CPU 32G内存主机) 600 (16CPU 64G内存主机) 1200 (32CPU 128G内存主机)open_cursors 350undo_retention 900 (默认值)(需要根据实际的数据库是OLTP和OLAP、实际数据量大小,实际每秒事务数来确定)fast_start_mttr_target 180 (小于0.5T的数据库) 300 (大于0.5T的数据库)(默认值为0,设置后还需要根据数据库的运行情况调整)db_writer_processes 2 (小于0.5T的数据库) 4 (大于0.5T小于1.5T的数据库) 6 (大于1.5T的数据库)(默认值是3,设置后还需要根据数据库的运行情况调整)disk_asynch_io TRUE (默认值)2) 保持默认值不能修改的参数nls_length_semantics BYTErecyclebin ONworkarea_size_policy AUTO(pga_aggregate_target需要设置为>16M的值)3) 由于修改的是spfile中的参数,需要重新启动数据库生效第八部分:数据库用户及权限管理1、 数据库缺省用户处理锁住除SYS、SYSTEM、DBSNMP和SYSMAN以外的数据库缺省用户:alter user MGMT_VIEW account lock;2、 public用户权限回收回收public用户的部分权限:revoke execute on DBMS_JOB from public;revoke execute on DBMS_LOB from public;revoke execute on DBMS_RANDOM from public;revoke execute on UTL_FILE from public;revoke execute on UTL_HTTP from public;revoke execute on UTL_SMTP from public;revoke execute on UTL_TCP from public;3、 创建监控用户并授权如果通过BMC监控平台进行监控,则需要创建监控的用户,并分配单独的数据表空间和临时表空间(假设数据库名称为pgud,在实际操作中,斜体的pgud需要替换为实际定义的数据库名):create tablespace PATROL datafile /pgud/pgud_u01/pgud/patrol01.dbf size 100m segment space management auto;create temporary tablespace PATROLTEMP tempfile /pgud/pgud_u03/pgud/patroltemp01.dbf size 100m;create user patrol identified by pat48ora default tablespace PATROL temporary tablespace PATROLTEMP;patrol用户的密码pat48ora具体由监控方面指定。

    4、 创建应用用户并授权根据应用的需求,创建应用用户,并分配单独的数据表空间和索引表空间表空间命名规则为:数据表空间:APPDATA索引表空间:APPINDX其中,斜体的APP需要替换为应用简称或者应用子模块简称(当应用复杂,子模块较为独立时)表空间数据文件命名规则:tablespace01.dbf、tablespace02.dbf、……其中,斜体的tablespace需要替换为对应表空间的名字注意:每个应用必须使用独立的数据表空间和索引表空间,这样能便于空间的管理表空间创建完毕后,创建应用用户,并授予必要的权限oracle11g默认密码180天过期,通过以下方式可以修改为无限期1、 查看用户的proifle是哪个,一般是default:sql>SELECT username,PROFILE FROM dba_users;2、 查看指定概要文件(如default)的密码有效期设置:SELECT *FROM DBA_PROFILES SWHERE S.PROFILE = DEFAULTAND RESOURCE_NAME = PASSWORD_LIFE_TIME;3、 将密码有效期由默认的180天修改成“无限制”:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;4、 修改后,还没有被提示ORA-28002警告的帐户不会再碰到同样的提示;已经被提示的帐户必须再改一次密码$sqlplus / as sysdbasql> alter user identified by<原来的密码>----不用换新密码sql>select username,expiry_date from dba_users;第九部分:数据库的备份配置数据库备份原则上采用RMAN,对于小数据库(数据库大小小于20GB),可酌情采用exp方式或者在停库的前提下通过复制数据文件和相关的配置文件方式进行。

    总部通过第三方备份软件备份到带库分公司一般没有条件使用总部方式,可以直接备份到硬盘但是,数据库使用的存储和备份落地的存储要尽量分开,如前者用外部存储,后者用内置磁盘阵列;实在分不开,也要在备份完成后将备份文件传到别的地方接下来主要讨论用RMAN备份到硬盘的情况,并假设已经备份目录已经创建(假设数据库名称为pgud,在实际操作中,斜体的pgud需要替换为实际定义的数据库名),目录名为/orabackup/pgud具体又根据数据库是否是归档模式分为2种情况:1、 非归档(NOARCHIVELOG)模式非归档模式下,只有离线全备份是有效的备份方式,恢复时,也只能恢复到备份时间点的状态,之后的数据变化将丢失,即不完全恢复离线全备份具体的备份步骤如下(使用oracle用户操作):1) 进入RMAN命令交互界面并连接到数据库:rman target /2) 将数据库正常关闭并启动到mount状态:RMAN> SHUTDOWN IMMEDIATE;RMAN> STARTUP MOUNT;3) 全库备份:RMAN> RUN {2> ALLOCATE CHANNEL c0 TYPE DISK;3> ALLOCATE CHANNEL c1 TYPE DISK;4> BACKUP DATABASE FORMAT /orabackup/pgud/%d_%s_%p_%T.bak;}4) 单独备份控制文件:RMAN> BACKUP CURRENT CONTROLFILE FORMAT /orabackup/pgud/%d_%s_%T.ctl;5) 将数据库重新打开:RMAN> ALTER DATABASE OPEN;6) 退出RMAN命令交互界面:RMAN> EXIT;考虑到备份可能要安排在每晚定时执行,而数据库在mount状态下schedule不可用,只能用操作系统cron定时任务的方式。

    另外,还需要考虑硬盘空间有限,仅保留一定数量的备份,多余的清除整个操作需要记录完整日志具体参考脚本内容如下:export ORACLE_BASE=/u01/oracleexport ORACLE_HOME=$ORACLE_BASE/product/db11gr2export ORACLE_SID=pgud$ORACLE_HOME/bin/rman target / msglog /orabackup/pgud/${0}.log append << EOFSHUTDOWN IMMEDIATE;STARTUP MOUNT;CONFIGURE RETENTION POLICY TO REDUNDANCY 3;RUN {ALLOCATE CHANNEL c0 TYPE DISK;ALLOCATE CHANNEL c1 TYPE DISK;BACKUP DATABASE FORMAT /orabackup/pgud/%d_%s_%p_%T.bak;}BACKUP CURRENT CONTROLFILE FORMAT /orabackup/pgud/%d_%s_%T.ctl;DELETE NOPROMPT OBSOLETE;EOF注:非归档模式下,恢复数据的情况只有一种:全库不完全恢复到备份时的状态。

    具体的步骤如下(使用oracle用户操作):1) 首先定位备份的控制文件,假设为/orabackup/pgud/pgud_1_20110101.ctl2) 进入RMAN命令交互界面并连接到数据库:rman target /3) 将数据库启动到nomount状态:RMAN> STARTUP NOMOUNT;4) 从指定位置还原控制文件:RMAN> RESTORE CONTROL FILE FROM /orabackup/pgud/pgud_1_20110101.ctl;5) 将数据库转换到mount状态:RMAN> ALTER DATABASE MOUNT;6) 全库还原:RMAN> RUN {2> ALLOCATE CHANNEL c0 TYPE DISK;3> ALLOCATE CHANNEL c1 TYPE DISK;4> RESTORE DATABASE;}7) 重设联机日志方式打开数据库:RMAN> ALTER DATABASE OPEN RESETLOGS;8) 退出RMAN命令交互界面:RMAN> EXIT;2、 归档(ARCHIVELOG)模式归档模式下,可以进行在线热备。

    如果结合归档日志和redo log,可以恢复到最新状态,即完全恢复但是,RMAN只能定时备份归档日志,无法备份redo log,如果没有备份的归档日志和没有归档的redo log两者任意一个丢失(指在数据丢失的同时丢失,而非单独丢失),就无法做到完全恢复因此,有条件的情况下,尽量考虑将两者同时复写到外置阵列和本地磁盘阵列如果归档日志全部丢失,则只能利用全备份加上同时备份的归档日志恢复到备份时间点的状态,之后的数据变化将丢失,即不完全恢复在线全备份具体的备份步骤如下(使用oracle用户操作):1) 进入RMAN命令交互界面并连接到数据库:rman target /2) 全库备份:RMAN> RUN {2> ALLOCATE CHANNEL c0 TYPE DISK;3> ALLOCATE CHANNEL c1 TYPE DISK;4> BACKUP DATABASE FORMAT /orabackup/pgud/%d_%s_%p_%T.bak;}3) 备份归档日志:RMAN> BACKUP2> FORMAT /orabackup/pgud/%d_%s_%p_%T.arc 3> ARCHIVELOG ALL DELETE ALL INPUT;4) 单独备份控制文件:RMAN> BACKUP CURRENT CONTROLFILE FORMAT /orabackup/pgud/%d_%s_%T.ctl;5) 退出RMAN命令交互界面:RMAN> EXIT;考虑到备份可能要安排在每晚定时执行,可以通过schedule的方式,也可以通过操作系统cron定时任务的方式,仍然建议使用后者。

    另外,还需要考虑硬盘空间有限,仅保留一定数量的备份,多余的清除整个操作需要记录完整日志具体参考脚本内容如下:export ORACLE_BASE=/u01/oracleexport ORACLE_HOME=$ORACLE_BASE/product/db11gr2export ORACLE_SID=pgud$ORACLE_HOME/bin/rman target / msglog /orabackup/pgud/${0}.log append << EOFCONFIGURE RETENTION POLICY TO REDUNDANCY 3;RUN {ALLOCATE CHANNEL c0 TYPE DISK;ALLOCATE CHANNEL c1 TYPE DISK;BACKUP DATABASE FORMAT /orabackup/pgud/%d_%s_%p_%T.bak;}BACKUP FORMAT /orabackup/pgud/%d_%s_%p_%T.arc ARCHIVELOG ALL DELETE ALL INPUT;BACKUP CURRENT CONTROLFILE FORMAT /orabackup/pgud/%d_%s_%T.ctl;DELETE NOPROMPT OBSOLETE;EOF注:归档模式下,数据恢复灵活了许多,有多种情况,可以全库恢复,也可以部分恢复。

    这里仅根据归档日志和redo log是否完全可用,相应讨论全库恢复的两种情况:完全恢复和不完全恢复具体的步骤如下(使用oracle用户操作):如果复写保护了归档日志和redo log,则进行全库完全恢复到最新的状态(假设控制文件没有全部丢失,如果控制文件全部丢失,则还需要在nomount状态首先恢复控制文件,并且打开数据库的时候要重设联机日志,具体参考不完全恢复步骤):1) 进入RMAN命令交互界面并连接到数据库:rman target /2) 将数据库启动到mount状态:RMAN> STARTUP MOUNT;3) 全库还原:RMAN> RUN {2> ALLOCATE CHANNEL c0 TYPE DISK;3> ALLOCATE CHANNEL c1 TYPE DISK;4> RESTORE DATABASE;}4) 全库恢复:RMAN> RECOVER DATABASE;5) 打开数据库:RMAN> ALTER DATABASE OPEN;6) 退出RMAN命令交互界面:RMAN> EXIT;如果没有备份的归档日志或者没有归档的redo log丢失并且不能通过复写恢复,则进行全库不完全恢复(假设控制文件也丢失并且不能通过复写恢复,如果控制文件可用,则不需要在nomount状态首先恢复控制文件,具体参考完全恢复步骤):1) 首先定位备份的控制文件,假设为/orabackup/pgud/pgud_1_20110101.ctl。

    2) 进入RMAN命令交互界面并连接到数据库:rman target /3) 将数据库启动到nomount状态:RMAN> STARTUP NOMOUNT;4) 从指定位置还原控制文件:RMAN> RESTORE CONTROL FILE FROM /orabackup/pgud/pgud_1_20110101.ctl。

    点击阅读更多内容
    卖家[上传人]:无极剑圣
    资质:实名认证