1.確定oracle的實例名,以及數據庫名
?? ?實例名稱:?? ??? ?ORACLE_SID=test
?? ?數據庫名稱: test
2.手工創建如下目錄:
?? ?/oracle/admin/test/adump ?--對應的是spfile里參數audit_file_dest
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?--(對于每個與數據庫的 SYSDBA 或 INTERNAL 連接,都將在該目錄中生成一個審計文件(僅用于 UNIX)。)
?? ?/oracle/admin/test/bdump?? ?--對應的是spfile里參數background_dump_dest
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?--(指定在 Oracle 操作過程中為后臺進程 (LGWR,DBW n 等等) 寫入跟蹤文件的路徑名(目錄或磁盤)。
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?--它還定義記錄著重要事件和消息的數據庫預警文件的位置。)
?? ?/oracle/admin/test/cdump?? ?--對應的是spfile里參數core_dump_dest(指定核心轉儲位置的目錄名 (用于 UNIX)。)
?? ?/oracle/admin/test/udump?? ?--對應的是spfile里參數user_dump_dest
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?--(為服務器將以一個用戶進程身份在其中寫入調試跟蹤文件的目錄指定路徑名。
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?--例如,該目錄可這樣設置: NT 操作系統上的 C:/ORACLE/UTRC;
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?--UNIX 操作系統上的 /oracle/utrc;或 VMS 操作系統上的DISK$UR3:[ORACLE.UTRC]。)
?? ?--/oracle/admin/test/pfile ?--pfile路徑(?貌似不建,也沒什么關系)
?? ?/oradata/test?? ??? ??? ??? ??? ??? ??? ?--數據庫路徑,數據庫控制文件..等文件的目錄
?? ?/oracle/flash_recovery_area/test?? ?--對應的是spfile里參數db_recovery_file_dest(閃回恢復區(FRA,Flashbach Recovery Area)路徑)
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?--FRA 由兩個初始化參數決定:DB_RECOVERY_FILE_DEST 和 DB_RECOVERY_FILE_DEST_SIZE ,
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?--前者決定 FRA 的路徑,后者決定大小(單位為 字節).可以使用 ALTER SYSTEM SET 來修改這些參數.?
3.創建數據庫實例的pfile文件
路徑:$ORACLE_HOME/dbs/init<SID>.ora
eg:/oracle/product/10.2.0/db_1/dbs/inittest.ora
文件內容:
?? ?db_name=test
?? ?db_files = 400 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?# MEDIUM
?? ?db_file_multiblock_read_count = 16 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?# MEDIUM
?? ?#db_block_buffers = 550 ? ? ? ? ? ? ? ? ?# MEDIUM ?#如果放開 sga_target 這個參數,就必須禁用這個參數,否則數據庫啟動報錯
?? ?log_checkpoint_interval = 10000
?? ?processes = 100 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? # MEDIUM
?? ?parallel_max_servers = 16 ? ? ? ? ? ? ? ? ? ? ? ? # MEDIUM
?? ?max_dump_file_size = 10240 ? ? ?# limit trace file size to 5 Meg each
?? ?global_names = TRUE
?? ?control_files = (/oradata/test/control01.ctl, /oradata/test/control02.ctl, /oradata/test/control03.ctl)
?? ?large_pool_size=83886080
?? ?core_dump_dest='/oracle/admin/test/cdump'
?? ?db_block_size=8192
?? ?db_recovery_file_dest='/oracle/flash_recovery_area/test'
?? ?db_recovery_file_dest_size=10147483648
?? ?dispatchers='(PROTOCOL=TCP) (SERVICE=testXDB)'
?? ?job_queue_processes=10
?? ?open_cursors=300
?? ?pga_aggregate_target=12777216
?? ?#SGA
?? ?shared_pool_size = 1153433600 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?# MEDIUM
?? ?log_buffer = 32768 ? #最好為cpu個數*128K
?? ?sga_target=4901044224?? ??? ??? ??? ?#oracle SGA 自動化管理
?? ?undo_management='auto'
?? ?undo_tablespace='undotbs1'
?? ?user_dump_dest='/oracle/admin/test/udump'
?? ?NLS_DATE_FORMAT="Mon DD YYYY HH24:MI:SS"
?? ?NLS_DATE_LANGUAGE=AMERICAN
?? ?audit_file_dest='/oracle/admin/test/adump'
?? ?background_dump_dest='/oracle/admin/test/bdump'
4.設置當前工作實例
?? ?export ORACLE_SID=test
?? ?查看是否設置成功: env | grep SID
5.登錄oracle
?? ?SQL>sqlplus / as sysdba ? --操作系統用戶登錄
?? ?
6.啟動實例
?? ?SQL>startup nomount
?? ?
7.執行創建數據庫腳本
?? ?create database test
?? ?logfile
?? ?group 1 '/oradata/test/redo01.log' size 100m reuse,
?? ?group 2 '/oradata/test/redo02.log' size 100m reuse,
?? ?group 3 '/oradata/test/redo03.log' size 100m reuse
?? ?datafile ?'/oradata/test/system01.dbf' size 500m reuse ?autoextend on next ?10240k maxsize unlimited
?? ?maxdatafiles 100
?? ?maxinstances 1
?? ?archivelog
?? ?character set zhs32gb18030
?? ?national character set al16utf16
?? ?sysaux datafile '/oradata/test/sysaux01.dbf' size 230m reuse autoextend on next 10m maxsize unlimited
?? ?undo tablespace undotbs1 datafile '/oradata/test/undo.dbf' size 100m reuse autoextend on next ?5120k maxsize unlimited
?? ?default temporary tablespace temp tempfile '/oradata/test/temp01.dbf' size 100m reuse autoextend on next 640k maxsize unlimited;
8.建立密碼文件
?? ?否則,使用sys用戶sysdba權限登錄的時候,會報 ORA-01031: insufficient privileges 錯誤
?? ?使用命令 orapwd ?--目錄在:/oracle/product/10.2.0/db_1/bin
?? ??? ?orapwd file=<fname> password=<password> entries=<users> force=<y/n>
?? ?eg: orapwd file=/oracle/product/10.2.0/db_1/dbs/orapwtest password=test
** 注意:上面是startup nomount , 這里需要正常重啟數據庫。
使用 sqlplus sys/test as sysdba ?登錄
8.執行oracle數據庫管理腳本
目錄: $ORACLE_HOME/rdbms/admin/catalog.sql --該腳本創建相對于系統基表的視圖和系統動態性能視圖以及他們的同義詞。
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ?--該腳本又同時運行創建其他對象的腳本
?? ??? ??? ?$ORACLE_HOME/rdbms/admin/catproc.sql --運行服務器端所需要的PL/SQL腳本
eg:?
?? ?SQL> @/oracle/product/10.2.0/db_1/rdbms/admin/catalog.sql
?? ?SQL> @/oracle/product/10.2.0/db_1/rdbms/admin/catproc.sql
?? ?
如果出現用戶sqlplus連接
Error accessing PRODUCT_USER_PROFILE
system用戶進去然后運行$oracle_home/sqlplus/admin/pupbld.sql就可以了
?? ?SQL> @/oracle/product/10.2.0/db_1/sqlplus/admin/pupbld.sql
sys用戶登錄:
?? ?安裝DBMS_JAVA包
?? ?SQL> @/oracle/product/10.2.0/db_1/javavm/install/initjvm.sql
?? ?安裝DBMS_LOCK包
?? ?SQL> @/oracle/product/10.2.0/db_1/rdbms/admin/dbmslock.sql
9.配置監聽文件
?? ?查看端口是否被占用
??? ?netstat -Aan | grep 1721
??? ?
??? ?配置端口為新的監聽端口
?? ?/oracle/product/10.2.0/db_1/network/admin/listener.ora
?? ?/oracle/product/10.2.0/db_1/network/admin/tsnames.ora
?? ?
?? ?修改 listener.ora 文件
?? ?SID_LIST_LISTENER 節點中增加: ?--增加實例
?? ?(SID_DESC =
? ? ? (SID_NAME = test)
? ? ? (ORACLE_HOME = /oracle/product/10.2.0/db_1)
? ? )
?? ?LISTENER 中增加: --增加 偵聽端口
?? ?LISTENER1 =
? (DESCRIPTION_LIST =
? ? (DESCRIPTION =
? ? ? (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
? ? ? (ADDRESS = (PROTOCOL = TCP)(HOST = p520_dc_kf)(PORT = 1721))
? ? )
? )
??
? SID_LIST_LISTENER 中增加: --增加 端口和實例的對應關系
? SID_LIST_LISTENER1 = ? ? ?--注意 這里的 SID_LIST_LISTENER1 必須與 LISTENER1 名稱必須一致
? (SID_LIST =
? ? (SID_DESC =
? ? ? (GLOBAL_DBNAME = test)
? ? ? (ORACLE_HOME = /oracle/product/10.2.0/db_1)
? ? ? (SID_NAME = test)
? ? )
? )
??
? 修改 tsnames.ora 文件
? jy_test =
? (DESCRIPTION =
? ? (ADDRESS_LIST =
? ? ? (ADDRESS = (PROTOCOL = TCP)(HOST = p520_dc_kf)(PORT = 1721))
? ? )
? ? (CONNECT_DATA =
? ? ? (SERVER = DEDICATED)
? ? ? (SERVICE_NAME = test)
? ? )
? )
10.配置完成之后:?
?? ?開啟監聽端口
?? ?使用命令 lsnrctl ?--目錄在:/oracle/product/10.2.0/db_1/bin
?? ??? ?Start [listener] ?--啟動指定的監聽器 [listener]就是在listener.ora中新配置的端口
12.創建 spfile
?? ?create spfile from pfile='/oracle/product/10.2.0/db_1/dbs/inittest.ora'
?? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??