手工创建Oracle10g数据库
在WINDOWSXP系统上, Oracle10g管理系统中 创建一个名为 demo 的数据库
1,创建例程服务, 初始化sys密码为 oracle
oradim -new -srvc OracleServicedemo -intpwd oracle
2, 创建参数文件(initdemo.ora和spfiledemo.ora)
a, 根据已存在的数据库创建初始化参数文件(如果一个数据库都没有,需要手工创建该文件,并填写相关的参数信息)
set oracle_sid=fenglu
sqlplus sys/admin as sysdba
CREATE PFILE='%ORACLE_HOME%/database/initdemo.ora' FROM SPFILE;
b, 编辑a步骤中产生的文件,修改数据库名, sid, 目录相关的参数等等
c, 根据b步骤中编辑好的初始化参数文件创建服务器参数文件
(通过初始化参数文件也可以启动数据库,但推荐使用spfile启动)
CREATE SPFILE='%ORACLE_HOME%/database/spfiledemo.ora' FROM PFILE='%ORACLE_HOME%/database/initdemo.ora';
3, 启动新创建的例程服务(OracleServicedemo), 启动数据库到nomount状态
set oracle_sid=demo
sqlplus sys/oracle as sysdba
startup nomount
4, 编写建库语句,并将该段语句存放在一个单独的文件中(createDatabase), 该文件目录无要求
内容如下:
CREATE DATABASE DEMO
MAXINSTANCES 8
MAXLOGHISTORY 1
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
LOGFILE GROUP 1 'F:\oracle\product\10.2.0\oradata\demo\redo01.log' SIZE 10M,
GROUP 2 'F:\oracle\product\10.2.0\oradata\demo\redo02.log' SIZE 10M
DATAFILE 'F:\oracle\product\10.2.0\oradata\demo\system01.dbf' SIZE 100M
AUTOEXTEND ON NEXT 10M EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE 'F:\oracle\product\10.2.0\oradata\demo\sysayx01.dbf' SIZE 30M
AUTOEXTEND ON NEXT 10M
DEFAULT TEMPORARY TABLESPACE TEMP
TEMPFILE 'F:\oracle\product\10.2.0\oradata\demo\temp.dbf' SIZE 10m
AUTOEXTEND ON NEXT 10M
UNDO TABLESPACE UNDOTBS1 DATAFILE 'F:\oracle\product\10.2.0\oradata\demo\undotbs1.dbf'
SIZE 20M
CHARACTER SET ZHS16GBK
NATIONAL CHARACTER SET AL16UTF16
USER SYS IDENTIFIED BY demo
USER SYSTEM IDENTIFIED BY manager;
5, 根据编写好的建库脚本创建数据库
set oracle_sid=DEMO
sqlplus sys/oracle as sysdba
startup nomount
@F:\oracle\product\10.2.0\admin\demo/createDatabase.sql;
执行结果: 数据库已创建。
6, 数据库创建成功之后, 所有数据字典基表都已创建, 下面创建数据字典视图
conn sys/demo as sysdba
@%ORACLE_HOME%\RDBMS\ADMIN\catalog.sql;
7, 安装Oracle系统包(相当于系统中预定义的函数)
conn sys/demo as sysdba
@%ORACLE_HOME%\RDBMS\ADMIN\catproc.sql;
8, 安装PRODUCT_USER_PROFILE表
conn system/manager
@%ORACLE_HOME%\sqlplus\admin\pupbld.sql;
接下来可以使用该数据库
---------------------------------
SQL> CREATE TABLESPACE USERS DATAFILE 'F:\oracle\product\10.2.0\oradata\demo\USERS.DBF' SIZE 10M
2 AUTOEXTEND ON NEXT 5M EXTENT MANAGEMENT LOCAL; --创建一个表空间
表空间已创建。
SQL> alter database default tablespace USERS; --将该数据库的默认表空间设置为USERS
数据库已更改。
SQL> create user demo identified by demo default tablespace users --创建一个用户, 指定该用户的默认表空间为USERS,并在USERS表空间中有5M的使用权限
2 temporary tablespace temp
3 quota 5M on users;
用户已创建。
SQL> GRANT connect, resource to demo; --给用户授权
授权成功。
SQL> conn demo/demo --接下来可以创建用户对象
已连接。
SQL> show user
USER 为 "DEMO"
SQL> SELECT object_name FROM user_objects;
未选定行
1,创建例程服务, 初始化sys密码为 oracle
oradim -new -srvc OracleServicedemo -intpwd oracle
2, 创建参数文件(initdemo.ora和spfiledemo.ora)
a, 根据已存在的数据库创建初始化参数文件(如果一个数据库都没有,需要手工创建该文件,并填写相关的参数信息)
set oracle_sid=fenglu
sqlplus sys/admin as sysdba
CREATE PFILE='%ORACLE_HOME%/database/initdemo.ora' FROM SPFILE;
b, 编辑a步骤中产生的文件,修改数据库名, sid, 目录相关的参数等等
c, 根据b步骤中编辑好的初始化参数文件创建服务器参数文件
(通过初始化参数文件也可以启动数据库,但推荐使用spfile启动)
CREATE SPFILE='%ORACLE_HOME%/database/spfiledemo.ora' FROM PFILE='%ORACLE_HOME%/database/initdemo.ora';
3, 启动新创建的例程服务(OracleServicedemo), 启动数据库到nomount状态
set oracle_sid=demo
sqlplus sys/oracle as sysdba
startup nomount
4, 编写建库语句,并将该段语句存放在一个单独的文件中(createDatabase), 该文件目录无要求
内容如下:
CREATE DATABASE DEMO
MAXINSTANCES 8
MAXLOGHISTORY 1
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
LOGFILE GROUP 1 'F:\oracle\product\10.2.0\oradata\demo\redo01.log' SIZE 10M,
GROUP 2 'F:\oracle\product\10.2.0\oradata\demo\redo02.log' SIZE 10M
DATAFILE 'F:\oracle\product\10.2.0\oradata\demo\system01.dbf' SIZE 100M
AUTOEXTEND ON NEXT 10M EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE 'F:\oracle\product\10.2.0\oradata\demo\sysayx01.dbf' SIZE 30M
AUTOEXTEND ON NEXT 10M
DEFAULT TEMPORARY TABLESPACE TEMP
TEMPFILE 'F:\oracle\product\10.2.0\oradata\demo\temp.dbf' SIZE 10m
AUTOEXTEND ON NEXT 10M
UNDO TABLESPACE UNDOTBS1 DATAFILE 'F:\oracle\product\10.2.0\oradata\demo\undotbs1.dbf'
SIZE 20M
CHARACTER SET ZHS16GBK
NATIONAL CHARACTER SET AL16UTF16
USER SYS IDENTIFIED BY demo
USER SYSTEM IDENTIFIED BY manager;
5, 根据编写好的建库脚本创建数据库
set oracle_sid=DEMO
sqlplus sys/oracle as sysdba
startup nomount
@F:\oracle\product\10.2.0\admin\demo/createDatabase.sql;
执行结果: 数据库已创建。
6, 数据库创建成功之后, 所有数据字典基表都已创建, 下面创建数据字典视图
conn sys/demo as sysdba
@%ORACLE_HOME%\RDBMS\ADMIN\catalog.sql;
7, 安装Oracle系统包(相当于系统中预定义的函数)
conn sys/demo as sysdba
@%ORACLE_HOME%\RDBMS\ADMIN\catproc.sql;
8, 安装PRODUCT_USER_PROFILE表
conn system/manager
@%ORACLE_HOME%\sqlplus\admin\pupbld.sql;
接下来可以使用该数据库
---------------------------------
SQL> CREATE TABLESPACE USERS DATAFILE 'F:\oracle\product\10.2.0\oradata\demo\USERS.DBF' SIZE 10M
2 AUTOEXTEND ON NEXT 5M EXTENT MANAGEMENT LOCAL; --创建一个表空间
表空间已创建。
SQL> alter database default tablespace USERS; --将该数据库的默认表空间设置为USERS
数据库已更改。
SQL> create user demo identified by demo default tablespace users --创建一个用户, 指定该用户的默认表空间为USERS,并在USERS表空间中有5M的使用权限
2 temporary tablespace temp
3 quota 5M on users;
用户已创建。
SQL> GRANT connect, resource to demo; --给用户授权
授权成功。
SQL> conn demo/demo --接下来可以创建用户对象
已连接。
SQL> show user
USER 为 "DEMO"
SQL> SELECT object_name FROM user_objects;
未选定行