Trong hướng dẫn này chúng ta sẽ cùng nhau tạo một CSDL mới trong Oracle một cách thủ công (có cách khác là sử dụng dbca).
Các bước tiến hành:
- Tạo thư mục cho database mới
- Tạo thông tin khởi tạo database mới
- Tạo db mới
- Drop thử db mới
Tạo thư mục cho Database mới:
mkdir /u01/duongdb
Tạo orapass cho DB mới:
cd $ORACLE_HOME/dbs orapwd file=orapwdduongdb password=oracle force=y format=12
Tạo script cho việc tạo DB mới:
cd vi dbcreate_script.sql create database duongdb user sys identified by oracle user system identified by oracle logfile group 1 ('/u01/duongdb/redo01.log') size 50m, group 2 ('/u01/duongdb/redo02.log') size 50m, group 3 ('/u01/duongdb/redo03.log') size 50m maxlogfiles 5 maxlogmembers 5 maxloghistory 50 maxdatafiles 100 maxinstances 1 datafile '/u01/duongdb/system01.dbf' size 100m autoextend on sysaux datafile '/u01/duongdb/sysaux01.dbf' size 100m autoextend on default tablespace users datafile '/u01/duongdb/users01.dbf' size 100m autoextend on default temporary tablespace temp tempfile '/u01/duongdb/temp01.dbf' size 50m undo tablespace undotbs1 datafile '/u01/duongdb/undotbs01.dbf' size 200m;
Tạo pfile cho DB mới: (không cần thông tin controlfile vì hệ thống sẽ tự tạo sau)
cd $ORACLE_HOME/dbs vi initduongdb.ora
*.audit_file_dest='/u01/app/oracle/admin/duongdb/adump' *.audit_trail='db' *.compatible='19.0.0' *.db_block_size=8192 *.db_create_file_dest='/u01/app/oracle/oradata' *.db_domain='localdomain' *.db_name='duongdb' *.db_recovery_file_dest='/u01/app/oracle/fast_recovery_area' *.db_recovery_file_dest_size=8256m *.diagnostic_dest='/u01/app/oracle' *.dispatchers='(PROTOCOL=TCP) (SERVICE=duongdbXDB)' *.log_archive_format='%t_%s_%r.dbf' *.nls_language='AMERICAN' *.nls_territory='AMERICA' *.open_cursors=300 *.pga_aggregate_target=578m *.processes=300 *.remote_login_passwordfile='EXCLUSIVE' *.sga_target=1732m *.undo_tablespace='UNDOTBS1'
Tạo đường dẫn cần thiết cho DB mới:
mkdir -p /u01/app/oracle/admin/duongdb/adump mkdir -p /u01/app/oracle/oradata/DUONGDB/controlfile
NOMount database trong instance mới:
cd export ORACLE_SID=duongdb sqlplus / as sysdba startup nomount @dbcreate_script.sql; @$ORACLE_HOME/rdbms/admin/catalog.sql; @$ORACLE_HOME/rdbms/admin/catproc.sql; @$ORACLE_HOME/sqlplus/admin/pupbld.sql select status from v$instance;
Check thông tin database mới:
export ORACLE_SID=duongdb sqlplus / as sysdba select name, open_mode from v$database;
Shutdown database rồi thêm đường dẫn controlfile vào pfile:
cd $ORACLE_HOME/dbs vi initduongdb.ora *.control_files='/u01/app/oracle/oradata/DUONGDB/controlfile/o1_mf_m3xrhzp3_.ctl','/u01/app/oracle/fast_recovery_area/DUONGDB/controlfile/o1_mf_m3xrhzq5_.ctl'
Thử Drop database: (các file tương ứng sẽ cũng bị xoá hết khi drop database)
startup force mount restrict; drop database;
Chúc các bạn thành công.