huayd_cu 发表于 2011-12-22 08:54

Oracle手工建库

<DIV>&nbsp;</DIV>
<DIV>准备Oracle的课程<BR>计划以手工建库的方式引出Oracle的各个知识点</DIV>
<DIV><BR>$ cat /etc/redhat-release <BR>CentOS release 5.6 (Final)</DIV>
<DIV>SQL&gt; select * from v$version where rownum&lt;2;</DIV>
<DIV>BANNER<BR>--------------------------------------------------------------------------------<BR>Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production</DIV>
<DIV>&nbsp;</DIV>
<DIV>1. 定义SID(system identifier)<BR>&nbsp;SID最多支持12个字符,且只能包含数字和字母,在某些平台上,SID是大小写敏感的。<BR>&nbsp;ORACLE_SID=mysid<BR>&nbsp;export ORACLE_SID<BR>&nbsp;<BR>&nbsp;# sid, db_name, db_unique_name, global_name, service_names, instance_name</DIV>
<DIV>&nbsp;</DIV>
<DIV>2. 确保必需的环境变量都已经设置<BR>&nbsp;ORACLE_SID/ORACLE_HOME是必需设置的。<BR>&nbsp;建议设置PATH包含ORACLE_HOME/bin目录<BR>&nbsp;ORACLE_HOME=/u01/app/oracle/product/11gR2<BR>&nbsp;ORACLE_SID=mysid<BR>&nbsp;export NLS_LANG=AMERICAN_AMERICA.AL32UTF8&nbsp;PATH=/db/oracle/app/oracle/product/11gR2/bin:$PATH<BR>&nbsp;export ORACLE_HOME ORACLE_SID PATH<BR>&nbsp;<BR>&nbsp;# NLS_LANG, character set, v$nls_parameters, data migration<BR>&nbsp;<BR>3. 选择数据库认证方式<BR>&nbsp;a) 密码文件认证<BR>&nbsp;b) 操作系统认证</DIV>
<DIV>&nbsp;# orapwd, sqlnet.ora<BR>&nbsp;<BR>4. 创建初始化参数文件<BR>&nbsp;参数文件分为pfile和spfile(server parameter file)两种<BR>&nbsp;最简单的参数文件只需<BR>&nbsp;&nbsp;DB_NAME=mydb&nbsp;# 数据库名最多支持8个字符<BR>&nbsp;&nbsp;<BR>&nbsp;# pfile, spfile, v$parameters, v$system_parameters, v$spparameters, create spfile from pfile, create pfile from memory(11g only)</DIV>
<DIV>&nbsp;</DIV>
<DIV>5. 连接实例<BR>&nbsp;$ sqlplus /nolog<BR>&nbsp;SQL&gt; conn / as sysdba<BR>&nbsp;<BR>&nbsp;$ sqlplus / as sysdba</DIV>
<DIV>6. 启动实例<BR>&nbsp;startup nomount <BR>&nbsp;<BR>&nbsp;# nomount, mount, open<BR>&nbsp;<BR>7. 执行create database的语句<BR>&nbsp;CREATE DATABASE mydb<BR>&nbsp;&nbsp;&nbsp; USER SYS IDENTIFIED BY sys_password<BR>&nbsp;&nbsp;&nbsp; USER SYSTEM IDENTIFIED BY system_password<BR>&nbsp;&nbsp;&nbsp; LOGFILE GROUP 1 ('/u01/logs/my/redo01a.log','/u02/logs/my/redo01b.log') SIZE 100M BLOCKSIZE 512,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GROUP 2 ('/u01/logs/my/redo02a.log','/u02/logs/my/redo02b.log') SIZE 100M BLOCKSIZE 512,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GROUP 3 ('/u01/logs/my/redo03a.log','/u02/logs/my/redo03b.log') SIZE 100M BLOCKSIZE 512<BR>&nbsp;&nbsp;&nbsp; MAXLOGFILES 5<BR>&nbsp;&nbsp;&nbsp; MAXLOGMEMBERS 5<BR>&nbsp;&nbsp;&nbsp; MAXLOGHISTORY 1<BR>&nbsp;&nbsp;&nbsp; MAXDATAFILES 100<BR>&nbsp;&nbsp;&nbsp; CHARACTER SET US7ASCII<BR>&nbsp;&nbsp;&nbsp; NATIONAL CHARACTER SET AL16UTF16<BR>&nbsp;&nbsp;&nbsp; EXTENT MANAGEMENT LOCAL<BR>&nbsp;&nbsp;&nbsp; DATAFILE '/u01/app/oracle/oradata/mynewdb/system01.dbf' SIZE 325M REUSE<BR>&nbsp;&nbsp;&nbsp; SYSAUX DATAFILE '/u01/app/oracle/oradata/mynewdb/sysaux01.dbf' SIZE 325M REUSE<BR>&nbsp;&nbsp;&nbsp; DEFAULT TABLESPACE users<BR>&nbsp;&nbsp;&nbsp; DATAFILE '/u01/app/oracle/oradata/mynewdb/users01.dbf'<BR>&nbsp;&nbsp;&nbsp; SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED<BR>&nbsp;&nbsp;&nbsp; DEFAULT TEMPORARY TABLESPACE tempts1<BR>&nbsp;&nbsp;&nbsp; TEMPFILE '/u01/app/oracle/oradata/mynewdb/temp01.dbf'<BR>&nbsp;&nbsp;&nbsp; SIZE 20M REUSE<BR>&nbsp;&nbsp;&nbsp; UNDO TABLESPACE undotbs<BR>&nbsp;&nbsp;&nbsp; DATAFILE '/u01/app/oracle/oradata/mynewdb/undotbs01.dbf'<BR>&nbsp;&nbsp;&nbsp; SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;<BR>&nbsp;&nbsp;&nbsp; <BR>&nbsp;定义: DB_CREATE_FILE_DEST='/u01/app/oracle/oradata'</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;# sys/system user, redo logfile, system/sysaux tablespace, default tablespace, temporary tablespace/tempfile, undo tablespace<BR>&nbsp;# file system, raw, ASM<BR>&nbsp;&nbsp;<BR>8. 创建数据库字典<BR>&nbsp;@?/rdbms/admin/catalog.sql&nbsp;&nbsp;# <BR>&nbsp;@?/rdbms/admin/catproc.sql&nbsp;&nbsp;# Runs all scripts requried for or used with PL/SQL<BR>&nbsp;@?/sqlplus/admin/pupbld.sql&nbsp;&nbsp;# PUBBLD stands for "Product User Profile BuiLD".&nbsp; <BR>&nbsp;<BR>&nbsp;# at-sign(@) is shorthand for the command that runs a SQL*Plus script<BR>&nbsp;# question mark(?) is a SQL*Plus variable indicating the Oracle home directory<BR>&nbsp;<BR>&nbsp;# dict, v$fixed_tables<BR>&nbsp;<BR>9. 备份数据库<BR>&nbsp;Oracle建议,完成数据库的创建过,进行一次数据库的全备(OCM考试有要求)<BR>&nbsp;<BR>&nbsp;# 冷备,热备,RMAN<BR>&nbsp;# 完全恢复, 不完全恢复, 各种文件损坏的恢复</DIV>
页: [1]
查看完整版本: Oracle手工建库