您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > Oracle常用操作经验总结
一:数据库启动的步骤:ORACLE数据库分为数据库实例和数据库文件两部分,实例是一块内存区域,加些后台进程,内存区域就是平时说的数据缓存,共享池等,后台进程就是如checkpoint,logwriter,dbwriter等,数据文件和SQLSERVER的在概念上没啥两样,这样数据文件,内存,进程就构成了一个数据库.1:首先检测参数文件init(sid).ora,就是初始化参数文件,从参数文件获取内存配置参数,数据库名称等信息,进行实例启动,这样内存就开辟了,进程也自己启动了,这个状态是nomount.其中Oracle数据库在启动时,首先查找的是orapwsid的口令文件,如果该文件不存在,则开始查找,orapw的口令文件。2:根据上步的参数文件信息,从参数文件获取控制文件的地址,加载他,获取数据库的物理文件的信息,但不会检查数据文件是否存在,这个称为mount,3:读取数据文件,打开数据库,执行些恢复检查点.这个状态就是open.二:更改实例名步骤:1:更改原来实例参数文件init(sid).ora,更改参数配置中实例名为新的实例名*.instance_name='gaogao1'2:更改原来参数文件为新的含有新的实例名的参数文件:如mvinitgaogao.orainitgaogao1.ora2:建立新的关于新的实例的密码文件:orapwdfile=orapw(sid)password=密码entries=5三:关于数据库启动中参数文件的问题.1:一般数据库在打开实例的时候,oracle读取参数文件的过程是:数据库首先会找SPFILE(sid).ora,如果找不到,才去找INIT(sid).ora,在上面都找不到才会去找init.ora.2:一般在在创建数据库完成以后系统会生成spfile(sid).ora这个文件。如果你想改变SGA的大小。那就要手动建立PFILE才可以对SGA调整。因为spfile(sid).ora是二进值文件。无法用文本编辑器。3:CREATEPFILEFROMSPFILE;这样就可以在dbs目录下自动创建一个init(sid).ora文件.4:如果你想用PFILE文件启动,你可以在启动时指定文件的路径,或把spfile(sid).ora改名字,就可以了.四:把用户对象从一个表空间gaojf导入到另外一个表空间gaojf1步骤:1:REVOKEUNLIMITEDTABLESPACEFROMGAOJF1;#在gaojf1的系统权限中取消掉unlimitedtablespace2:ALTERUSERGAOJF1QUOTA20MONCICRO1;给用户gaojf1资源限额20m或者是ALTERUSERGAOJF1QUOTAUNLIMITEDONCICRO1;给用户gaojf1资源限额为无限制使用.(非无)3:然后用导出语句:impgaojf1/gaojf1file=cicrotablestest.dmpfromuser=gaojftouser=gaojf1ignore=ytablespaces=cicro1;或者impgaojf1/gaojf1file=cicrotablestest.dmpfull=y,ignore=y;ok了,看看吧!五:关于表空间的使用alteruserhrquota200montest1;指定hr用户在表空间test1的使用限额时200兆.alteruserhrquota0onexample;指定hr在表空间example的使用限额为0,即没有指定限额(无).alteruserhrquotaunlimitedontest1;指定hr在表空间test1的使用限额为无限制(非无,是无限制使用).Onlyonemode(TABLES,FROMUSER,orFULL)canbespecified#即为在导入的时候,只能从tables,fromuser,full中指定一种模式.impsales/sales@test1fromuser=zjjtouser=salesrows=nignore=ncommit=yTABLESPACES=testfile=D:\exp\zjj.dmplog=d:\exp\zjjimp01.log#倒入数据的格式imphr/hrfile=e:\hr.dmplog=e:\hrimp.logfromuser=hrtouser=test1altertable(tablename)movetablespace表空间名#把某个表移动到另外一个表空间.查看导入后表的表空间select*fromuser_all_tableswheretable_name='表名'查看表空间的使用情况selectsum(bytes)/(1024*1024)asfree_space,tablespace_namefromdba_free_spacegroupbytablespace_name;六:更改sys和sysem的密码Alterusersysidentifiedby新的密码Alterusersystemidentifiedby新的密码七:更改数据库为归档模式:通过v$database,查看数据库是否在Archive模式下:SQLselectlog_modefromv$database;或者通过SQLarchiveloglist;如果不是Archive模式,则设定数据库运行于归档模式下:一:数据库用pfile文件时的修改方法。(1):SQLshutdownimmediateSQLstartupmountSQLalterdatabasearchivelog;SQLalterdatabaseopen;如果Automaticarchival显示为“Enabled”,则数据库归档方式为自动归档。否则需要手工归档,或者将归档方式修改为自动归档,如:正常shutdown数据库,在参数文件中init(sid).ora中加入如下参数SQLshutdownimmediate修改init(sid).ora:LOG_ARCHIVE_START=TRUElog_archive_dest=/opt/oracle/product/9.2.0/dbs/archgaogao(归档日值存放位置可以自己定义)log_archive_format=T%TS%S.ARC(存档日志文件的文件名格式)二:数据库用的时二进制spfile时的修改方法,即以命令方式操作。(1):SQLalterdatabasearchivelog;(设置为归档模式)设置成自动归档:(重新启动数据库生效)(2):SQLaltersystemsetlog_archive_start=truescope=spfile;设置归档路径:(重新启动数据库生效)(3):SQLaltersystemsetlog_archive_dest='/opt/oracle/product/9.2.0/dbs/archexitgogo'scope=spfile;重新启动数据库:SQLstartupforce然后,重新启动数据库,此时Oracle数据库将以自动归档的方式工作在Archive模式下。其中参数LOG_ARCHIVE_DEST是指定的归档日志文件的路径,建议与Oracle数据库文件存在不同的硬盘,一方面减少磁盘I/O竞争,另外一方面也可以避免数据库文件所在硬盘毁坏之后的文件丢失。归档路径也可以直接指定为磁带等其它物理存储设备,但可能要考虑读写速度、可写条件和性能等因素。如果数据库正在运行中,不能即刻重起,要设置其为自动归档模式,则做如下操作:SVRMGRLALTERSYSTEMARCHIVELOGSTART;如要设置其为非自动归档模式(取消自动归档),则:SVRMGRLALTERSYSTEMARCHIVELOGSTOP;但如果数据库重起后,该语句修改的结果就失效了,自动归档的设置还是按照系统参数文件中的LOG_ARCHIVE_START的值来设置。手动归档:ALTERSYSTEMARCHIVELOGALL;将这个时间点的redologs归档SVRMGRLarchivelogall;注意:当数据库处在ARCHIVE模式下时,一定要保证指定的归档路径可写,否则数据库就会挂起,直到能够归档所有归档信息后才可以使用.八:如何通过控制文件查看数据文件,日值文件所在的位置看一下controlfile不就知道了[oracle@localhostcicro]$stringscontrol01.ctl]\[ZCICRO!CICROcicrocicroaoEaoE/opt/oracle/oradata/cicro/redo03.log/opt/oracle/oradata/cicro/redo02.log/opt/oracle/oradata/cicro/redo01.log/opt/oracle/oradata/cicro/xdb01.dbf/opt/oracle/oradata/cicro/users01.dbf/opt/oracle/oradata/cicro/undotbs01.dbf/opt/oracle/oradata/cicro/tools01.dbf/opt/oracle/oradata/cicro/system01.dbf/opt/oracle/oradata/cicro/odm01.dbf/opt/oracle/oradata/cicro/indx01.dbf/opt/oracle/oradata/cicro/example01.dbf/opt/oracle/oradata/cicro/drsys01.dbf/opt/oracle/oradata/cicro/cwmlite01.dbf/opt/oracle/oradata/cicro/temp01.dbf/opt/oracle/oradata/cicro/sxzjdb.dbf/opt/oracle/oradata/cicro/redo03.log/opt/oracle/oradata/cicro/redo02.log/opt/oracle/oradata/cicro/redo01.log/opt/oracle/oradata/cicro/xdb01.dbf/opt/oracle/oradata/cicro/users01.dbf/opt/oracle/oradata/cicro/undotbs01.dbf/opt/oracle/oradata/cicro/tools01.dbf/opt/oracle/oradata/cicro/system01.dbf/opt/oracle/oradata/cicro/odm01.dbf/opt/oracle/oradata/cicro/indx01.dbf/opt/oracle/oradata/cicro/example01.dbf/opt/oracle/oradata/cicro/drsys01.dbf/opt/oracle/oradata/cicro/cwmlite01.dbf/opt/oracle/oradata/cicro/temp01.dbf/opt/oracle/oradata/cicro/sxzjdb.dbfCWMLITEDRSYSEXAMPLEINDXSYSTEMTOOLSUNDOTBS1USERSTEMPSXZJCWMLITEDRSYSEXAMPLEINDXSYSTEMTOOLSUNDOTBS1USERSTEMPSXZJ………………………….九、数据库的扩充1、增加一个表空间当我们要开发某个大型的应用程序时,最好建立一个相应的表空间。命令示例:SVRMGRcreatetablespaceapplicationdatafile‘/usr/oracle/dbs/application.dbf’size3M针对具体情况增加回滚和临时表空间命令示例:SVRMGRcreaterollbacktablespacerbs8datafile‘/
本文标题:Oracle常用操作经验总结
链接地址:https://www.777doc.com/doc-4340352 .html