Гар аргаар бааз үүсгэх (create database manually)


#1

Бааз үүсгэх хэд хэдэн арга байх хэдий ч туршлага болох үүднээс гар аргаар хэрхэн үүсгэх талаар оруулъя.
Юуны өмнө инстанс асах үед бидэнд контрол файлын зам, баазын нэрийг агуулсан параметр файл хэрэг болно. Уг тохиргоог уншуулснаар бид контрол файлыг үүсгэх боломж бүрдэх бөгөөд SQL коммандын тусламжтайгаар контрол файлын мэдээллүүдийг оруулж баазыг үүсгэх үйлдэл хийгдэнэ.

[oracle@node215 ~]# vi /etc/initorcl.ora

db_name=orcl
control_files=(control01orcl.ctl,control02orcl.ctl)

Баазын файлуудыг хадгалах дараах хавтсуудыг үүсгэнэ.

[orcle@node215 ~]#
[orcle@node215 ~]# mkdir -p /u01/app/oracle/oradata/orcl
[orcle@node215 ~]# mkdir -p /u01/app/oracle/fast_recovery_area/orcl
[orcle@node215 ~]# mkdir -p /u01/app/oracle/admin/orcl/adump
[orcle@node215 ~]#

/etc/oratab дараах файлыг нэмж өгнө
orclprod:/u01/app/oracle/product/11.2.0/db_1:N

Дараах коммандуудын тусламжтайгаар хоосон инстанс үүсгэж баазыг үүсгэнэ.

[oracle@node215 ~]$
[oracle@node215 ~]$ . oraenv
ORACLE_SID = [orcl] ?
The Oracle base remains unchanged with value /u01/app/oracle
[oracle@node215 ~]$
[oracle@node215 ~]$
[oracle@node215 ~]$
[oracle@node215 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Fri Dec 30 05:31:06 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> create spfile from pfile='/tmp/initorcl.ora';

File created.

SQL> startup nomount;
ORACLE instance started.

Total System Global Area  217157632 bytes
Fixed Size		    2251816 bytes
Variable Size		  159384536 bytes
Database Buffers	   50331648 bytes
Redo Buffers		    5189632 bytes
SQL>
SQL> CREATE DATABASE orcl
   USER SYS IDENTIFIED BY sys_password
   USER SYSTEM IDENTIFIED BY system_password
   LOGFILE GROUP 1 ('/u01/app/oracle/oradata/orcl/redo01a.log','/u01/app/oracle/fast_recovery_area/orcl/redo01b.log') SIZE 100M BLOCKSIZE 512,
           GROUP 2 ('/u01/app/oracle/oradata/orcl/redo02a.log','/u01/app/oracle/fast_recovery_area/orcl/redo02b.log') SIZE 100M BLOCKSIZE 512,
           GROUP 3 ('/u01/app/oracle/oradata/orcl/redo03a.log','/u01/app/oracle/fast_recovery_area/orcl/redo03b.log') SIZE 100M BLOCKSIZE 512
   MAXLOGFILES 5
   MAXLOGMEMBERS 5
   MAXLOGHISTORY 1
   MAXDATAFILES 100
   CHARACTER SET AL32UTF8
   NATIONAL CHARACTER SET AL16UTF16
   EXTENT MANAGEMENT LOCAL
   DATAFILE '/u01/app/oracle/oradata/orcl/system01.dbf' SIZE 325M REUSE
   SYSAUX DATAFILE '/u01/app/oracle/oradata/orcl/sysaux01.dbf' SIZE 325M REUSE
   DEFAULT TABLESPACE users
      DATAFILE '/u01/app/oracle/oradata/orcl/users01.dbf'
      SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
   DEFAULT TEMPORARY TABLESPACE tempts1
      TEMPFILE '/u01/app/oracle/oradata/orcl/temp01.dbf'
      SIZE 20M REUSE
   UNDO TABLESPACE undotbs
      DATAFILE '/u01/app/oracle/oradata/orcl/undotbs01.dbf'
      SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

Database created.

SQL>

Баазын dictionary-г үүсгэе

SQL> @?/rdbms/admin/catalog
SQL> @?/rdbms/admin/catproc
SQL> @?/rdbms/admin/utlrp.sql
SQL> ----- system -хэрэглэгчээр ажиллуулах
SQL> @?/sqlplus/admin/pupbld.sql

Бааз үүссэн тул шалгая.

SQL> select name,open_mode from v$database;

NAME	  OPEN_MODE
--------- --------------------
ORCL	  READ WRITE

SQL> col name format a60
SQL> select status,name from v$controlfile;

STATUS	NAME
------- ------------------------------------------------------------
	/u01/app/oracle/product/11.2.0/db_1/dbs/control01orcl.ctl
	/u01/app/oracle/product/11.2.0/db_1/dbs/control02orcl.ctl

Бааз үүсгэх комманд баазыг open горимд аваачиж ажиллуулсан байна. Тиймээс шууд ашиглах боломжтой.