手工创建oracle 10g数据库
操作系统为Debian Wheezy(当前仍为testing) AMD64,数据库为oracle 10g 10.2.0.4
安装oracle 10g 10.2.0.4时,因为要先安装10.2.0.1,然后再升级到10.2.0.4,所以没有建库,省却升级数据库的麻烦。
新建oracle数据库可以使用图形化的工具DBCA(Database Configuration Assistant),也可以使用CREATE DATABASE语句手工创建数据库。这里采用后者手工建库。
手工新建oracle数据库
1、确定数据库实例标识符并设置相关环境变量,建立相关路径
为数据库确定一个SID,并设置操作系统环境变量ORACLE_SID,此处新建数据库拟定的SID为catlogdb
设定环境变量
1 | export ORACLE_SID=catlogdb |
创建需要的路径,相关路径设置参照Optimal Flexible Architecture for 10.2
1 | $ mkdir -p $ORACLE_BASE/admin/$ORACLE_SID/{a,b,c,u}dump |
2、创建密码文件
1 | $ orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=passwd_for_sys force=y |
在目录$ORACLE_HOME/dbs目录下生成密码文件orapwcatlogdb,sys用户的密码为passwd_for_sys
3、创建初始化参数文件
oracle提供了一个样例参数文件$ORACLE_HOME/dbs/init.ora,可以根据需要增删修改初始化参数。
初始化参数命名为initcatlogdb.ora,其内容如下:
1 | db_name=catlogdb |
三个控制文件control01.ctl,control02.ctl和control03.ctl内容是完全一样的,最好将其分散到不同的驱动器上以提高控制文件的安全性,这叫做多路镜像multiplexing
4、创建spfile并启动实例
1 | $ sqlplus / as sysdba; |
这会在$ORACLE_HOME/dbs/目录下生成spfile参数文件spfilecatlogdb.ora,这是服务器端的参数文件,关于参数文件详见”oracle初始化参数文件pfile和spfile“
启动实例
1 | SQL> startup nomount |
5、创建数据库
建库脚本createdb.sql如下:
[sql]
CREATE DATABASE catlogdb
USER SYS IDENTIFIED BY oracle
USER SYSTEM IDENTIFIED BY oracle
LOGFILE GROUP 1 (‘/u01/oradata/catlogdb/redo01.log’) SIZE 100M,
GROUP 2 (‘/u01/oradata/catlogdb/redo02.log’) SIZE 100M,
GROUP 3 (‘/u01/oradata/catlogdb/redo03.log’) SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACTER SET AL32UTF8
NATIONAL CHARACTER SET UTF8
EXTENT MANAGEMENT LOCAL
DATAFILE ‘/u01/oradata/catlogdb/system01.dbf’ SIZE 325M REUSE
SYSAUX DATAFILE ‘/u01/oradata/catlogdb/sysaux01.dbf’ SIZE 325M REUSE
DEFAULT TABLESPACE users
DATAFILE ‘/u01/oradata/catlogdb/users01.dbf’
SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE ‘/u01/oradata/catlogdb/temp01.dbf’
SIZE 20M REUSE
UNDO TABLESPACE undotbs1
DATAFILE ‘/u01/oradata/catlogdb/undo01.dbf’
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
[/sql]
执行建库脚本
1 | SQL> @createdb.sql; |
6、运行系统脚本建立数据字典视图
1 | SQL> @?/rdbms/admin/catalog.sql; |
7、编辑对外监听配置文件
监听文件$ORACLE_HOME/network/admin/listener.ora内容:
1 | SID_LIST_LISTENER = |
其中hostname为主机名,domain为主机域名,也可以用ip地址来代替hostname.domain字段。
建库完毕。