学无止境
分类: Oracle
2013-08-19 09:41:00
建库的方法:
1.使用DBCA图形化界面建库。
2.使用CREATE DATABASE命令,在命令行界面下建库。
建库前需要考虑的问题:
1.评估数据库所需的空间大小。根据建库的经验,需要考虑好SYSTEM表空间、SYSAUX表空间,UNDO表空间,TEMP表空间,controlfile,redo log,其它的包括USERS表空间这些大小,其它业务表空间可以在数据库建好之后,结合业务需要考虑。
2.数据文件和redo log,controlfile在操作系统上的存放位置。如数据文件和redo log分布在不同的磁盘上,减少IO瓶颈。控制文件的镜像放置在不同位置,增加安全性。
3.考虑是否使用ASM和ORACLE自动文件管理。
4.选择global database name,建库时需要设置DB_NAME和DB_DOMAIN参数。DB_NAME是必须要设置的。
5.选择数据库的字符集,包括character set和national character set,主要考虑character set,结合国家,语言,客户端,操作系统,应用来考虑。
6.时区,一般按默认就可以,ORACLE会选择2个时区文件中的1个,这一点,通常在建库时不需要考虑。
7.选择数据库标准块大小,即DB_BLOCK_SIZE参数
8.决定SYSTEM和SYSAUX表空间初始大小。
9.决定持久表空间,用于存放非系统用户数据。
10.决定UNDO表空间。
11.考虑备份和恢复,如控制文件副本,归档日志,数据库备份目录等。
手动建库步骤:
1.设置SID。可以设置到profile文件中,再使其生效。或者用export、setenv命令设置。windows环境,还需要先创建一个ORACLE服务,用oradim命令。
2.创建password file,用orapwd命令,密码文件位置放置在$ORACLE_HOME/dbs下,windows在%ORACLE_HOME%\database下,密码文件命名规则为orapw$SID
例如:orapwd file=orapwtest password=oracle entries=10
3.创建pfile,pfile文件可以通过$ORACLE_HOME/dbs/init.ora复制一个修改,例如要创建一个test数据库的pfile:cat init.ora | grep -v ^# | grep -v ^$ >inittest.ora
参数文件主要考虑以下参数,OCM考试参数有陷阱,需要看清题目要求。
db_name = test
processes = 150
control_files = (xxxx,xxxx)
db_block_size = 8192
sga_target = 300m
log_buffer = 50000000
undo_management = auto
undo_tablespace = undotbs
background_dump_dest =
core_dump_dest =
user_dump_dest =
db_create_file_dest = 考题中要求你创建数据文件时存放的目录
db_create_online_log_dest_1 = 考题中要求你创建联机重做日志文件时存放的目录
4.连接到实例,创建spfile。
SQLPLUS /nolog
CONNECT SYS/password as sysdba
CREATE SPFILE FROM PFILE;
5.启动到nomount状态
startup nomount;
6.执行CREATE DATABASE命令。可以参考以下这条命令,要修改其中的SYS密码,文件位置,字符集,一些MAX的设置,undo表空间名,temp表空间名等。OCM考试如果没有要求执行后续的脚本,到这步section 0应该就算完成了。
CREATE DATABASE mynewdb
USER SYS IDENTIFIED BY pz6r58
USER SYSTEM IDENTIFIED BY y1tz5p
LOGFILE GROUP 1 ('/u01/oracle/oradata/mynewdb/redo01.log') SIZE 100M,
GROUP 2 ('/u01/oracle/oradata/mynewdb/redo02.log') SIZE 100M,
GROUP 3 ('/u01/oracle/oradata/mynewdb/redo03.log') SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACTER SET US7ASCII
NATIONAL CHARACTER SET AL16UTF16
DATAFILE '/u01/oracle/oradata/mynewdb/system01.dbf' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/u01/oracle/oradata/mynewdb/sysaux01.dbf' SIZE 325M REUSE
-- DEFAULT TABLESPACE tbs_1
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE '/u01/oracle/oradata/mynewdb/temp01.dbf'
SIZE 20M REUSE
UNDO TABLESPACE undotbs
DATAFILE '/u01/oracle/oradata/mynewdb/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
7.运行建立数据字典脚本,以下2个脚本是必须执行的:
CONNECT SYS/password AS SYSDBA
@?/rdbms/admin/catalog.sql
@?/rdbms/admin/catproc.sql
EXIT
CATALOG.SQL脚本用于创建数据字典视图,动态视图,公有同义词。
CATPROC.SQL脚本执行需要使用到的PL/SQL。
8.用SYS用户运行其他脚本,如catblock.sql catoctk.sql owminst.plb dbmspool.sql等,@?/sqlplus/admin/pupbld.sql这些脚本要用SYSTEM用户执行。
9.创建其他表空间,如数据表空间和索引表空间。
10.备份数据库。