oracle 9i 手動建庫

studywell發表於2015-04-10

oracle 9i 手動建庫

oracle_sid=edi

2.手工建立如下目錄
oradb:/data # pwd
/data
oradb:/data # mkdir admin
oradb:/data # cd admin/
oradb:/data/admin # mkdir cdump bdump udump adump
oradb:/data # chown -R oracle:oinstall /data


3. 建立的initvrh9i.ora檔案

cd $ORALE_HOME/dbs
cat init.ora | grep -v ^# | grep -v ^$ > initSID.ora


$ vi $ORACLE_HOME/dbs/initedi.ora

db_block_size=8192
db_cache_size=801112064
cursor_sharing=similar
open_cursors=300
background_dump_dest=/data/admin/bdump
core_dump_dest=/data/admin/cdump
user_dump_dest=/data/admin/udump
audit_file_dest=/data/admin/adump
control_files=(/data/oradata/control1.ctl, /data/oradata/control2.ctl,/oracle/app/control3.ctl)
log_archive_dest_1='location=/data/arch'
log_archive_format=%t_%s.dbf
log_archive_start=true
compatible=9.2.0
db_name=edi
db_domain=oracle.com
remote_login_passwordfile=exclusive
instance_name=edi
java_pool_size=31457280
large_pool_size=1048576
shared_pool_size=52428800
log_buffer=6283264
processes=1500
sga_max_size=1g
pga_aggregate_target=214748364
fast_start_mttr_target=300
resource_manager_plan=system_plan
sort_area_size=1048576
undo_management=auto
undo_tablespace=undotbs1


4. 啟動資料庫到nomount狀態

此時已經有可供啟動的初始化引數檔案了,將資料庫啟動到nomount狀態。

SQL> startup nomount;

5. 建立spfile

例項啟動以後立刻建立spfile,然後重啟一次資料庫,讓資料庫能夠使用到spfile。

SQL> create spfile from pfile;

6.建立密碼檔案
用orapwd程式建立orapwvrh9i密碼檔案,如果記不清楚orapwd程式怎麼用,直接敲orapwd然後回車,會告訴你語法是怎樣的。
 orapwd file=$ORACLE_HOME/dbs/orapwedi password=xjks entries=30

建立完了,在重新登入sqlplus,並重新進入nomount狀態,否則建庫時提示找不到密碼檔案;

SQL>conn / as sysddba
SQL> startup nomount


7. 要快速找到例句要查的是Administrator’s Guide這本文件中第二章 Creating an Oracle Database -> Creating the database -> Issue the CREATE DATABASE Statement,
這裡有完整的一條SQL語句,copy出來,然後按照實際需求編輯相應的地方, 然後執行(NOTE:修改MAXLOGFILES,undo,default)。

具體如下:

[oracle@vrhvrh9i dbs]$ vi createdb.sql
       
CREATE DATABASE edi
USER SYS IDENTIFIED BY xjks
USER SYSTEM IDENTIFIED BY xjks
LOGFILE GROUP 1 ('/data/oradata/redo01.log') SIZE 100M,GROUP 2 ('/data/oradata/redo02.log') SIZE 100M,GROUP 3 ('/data/oradata/redo03.log') SIZE 100M
MAXLOGFILES 30
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 200
MAXINSTANCES 2
CHARACTER SET ZHS16GBK
NATIONAL CHARACTER SET AL16UTF16
DATAFILE '/data/oradata/system01.dbf' SIZE 325M REUSE EXTENT MANAGEMENT LOCAL
DEFAULT TEMPORARY TABLESPACE temp TEMPFILE '/data/oradata/temp01.dbf' SIZE 200M REUSE
UNDO TABLESPACE undotbs1 DATAFILE '/data/oradata/undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED;
    
        

8.建立預設表空間
 CREATE TABLESPACE users DATAFILE '/data/oradata/users01.dbf' SIZE 10M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

9. 執行catalog.sql(建資料字典檢視) 和 catproc.sql(建儲存過程包)

只需要執行這兩個SQL,都在$ORACLE_HOME/rdbms/admin中,建立必須的資料字典和內建的package等

SQL>spool /data/cat.log
SQL>@?/rdbms/admin/catalog.sql
SQL>@?/rdbms/admin/catproc.sql


最終可以檢視一些狀態

select open_mode, name from v$database;
select startup_time,status from v$instance;

10、重啟資料庫,看是否正常;

正常啟動,備份一下引數檔案
SQL> create pfile='/data/pfileedi0410.ora' from spfile;

11、修改成歸檔模式

SQL> startup mount;
SQL> alter database archivelog;
SQL> archive log start;
SQL> archive log list;
SQL> alter database open;

自動刪除歸檔日誌檔案
30 20 * * * su - oracle -c "/data/delarch.sh"

刪除7天前歸檔日誌;

vi建立一個delarch.sh檔案,該檔案屬主:oracle:oinstall, 許可權:755
內容:
$ORACLE_HOME/bin/rman target / < delete noprompt archivelog all completed before 'sysdate-7';
exit
EOF

12、最佳化引數
SQL> alter system set sga_max_size=1500m scope=spfile;
SQL> alter system set shared_pool_size=800m scope=spfile;
SQL> alter profile default limit failed_login_attempts unlimited;
alter system set pga_aggregate_target=500m scope=spfile;

修改完成後,備份引數檔案
SQL> create pfile='/data/pfileedi410new.ora' from spfile;





來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29519108/viewspace-1562624/,如需轉載,請註明出處,否則將追究法律責任。

相關文章