创建目录
mkdir d:\oracle\product\ \database
mkdir e:\oracle\admin\Ora g\bdump
mkdir e:\oracle\admin\Ora g\cdump
mkdir e:\oracle\admin\Ora g\create
mkdir e:\oracle\admin\Ora g\pfile
mkdir e:\oracle\admin\Ora g\udump
mkdir e:\oracle\flash_recovery_area
mkdir e:\oracle\oradata
mkdir e:\oracle\oradata\Ora g
生成windows服务 创建密码文件 在cmd命令下运行
set ORACLE_SID=dbca 绿色部分设置oracle 实例名为 为ora g
d:\oracle\product\ \DB_ \bin\oradim exe new sid ORA G startmode manual spfile d:\oracle\product\ \DB_ \bin\oradim exe edit sid ORA G startmode a spfile
创建一个实例名为dbca 并且有手动启动方式改为自动启动
d:\oracle\product\ \DB_ \bin\orapwd exe file=d:\oracle\product\ \db_ \PWDOra g ora password=sysPassword force=y
用oracle自带的orapwd 为sys用户创建一个默认的密码为sysPassword
执行创建数据库脚本
D:\oracle\ora \bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDB sql
D:\oracle\ora \bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDBFiles sql
D:\oracle\ora \bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDBCatalog sql
D:\oracle\ora \bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\postDBCreation sql
黑体部分就是创建数据库要调用的脚本
第一 CreateDB sql
connect SYS/change_on_install as SYSDBA 这是刚刚我们设置的密码以sysdba身份连接到数据库
connect SYS/change_on_install as SYSDBA 这是刚刚我们设置的密码以sysdba身份连接到数据库
set echo on
spool D:\oracle\ora \assistants\dbca\logs\CreateDB log 写日志
startup nomount pfile= D:\oracle\admin\dbca\scripts\init ora 调用参数文件 启动数据库到只装载实例阶段
CREATE DATABASE dbca
MAXINSTANCES
MAXLOGHISTORY
MAXLOGFILES
MAXLOGMEMBERS
MAXDATAFILES 控制文件记录的相关最大日志数 日志组 最大数据文件数等限制
DATAFILE D:\oracle\oradata\dbca\system dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL
DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE D:\oracle\oradata\dbca\temp dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED
UNDO TABLESPACE UNDOTBS DATAFILE D:\oracle\oradata\dbca\undotbs dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED 创建系统 临时 回滚 表空间ITPUB个人空间!dJ l {!i W r f
CHARACTER SET ZHS GBK
NATIONAL CHARACTER SET AL UTF 字符集
LOGFILE GROUP ( D:\oracle\oradata\dbca\redo log ) SIZE K
GROUP ( D:\oracle\oradata\dbca\redo log ) SIZE K
GROUP ( D:\oracle\oradata\dbca\redo log ) SIZE K创建日志文件租和成员
spool off
exit
第二 CreateDBFiles sql
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora \assistants\dbca\logs\CreateDBFiles log
CREATE TABLESPACE INDX LOGGING DATAFILE D:\oracle\oradata\dbca\indx dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO
CREATE TABLESPACE TOOLS LOGGING DATAFILE D:\oracle\oradata\dbca\tools dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO
CREATE TABLESPACE USERS LOGGING DATAFILE D:\oracle\oradata\dbca\users dbf SIZE M REUSE AUTOEXTEND ON NEXT K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO 创建相关用户要用到的表空间
spool off
第三:CreateDBCatalog sql
创建system数据字典 存放到system表空间 相关表 视图等
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora \assistants\dbca\logs\CreateDBCatalog log
@D:\oracle\ora \rdbms\admin\catalog sql
@D:\oracle\ora \rdbms\admin\catexp sql
@D:\oracle\ora \rdbms\admin\catblock sql
@D:\oracle\ora \rdbms\admin\catproc sql
@D:\oracle\ora \rdbms\admin\catoctk sql
@D:\oracle\ora \rdbms\admin\owminst plb
connect SYSTEM/manager
@D:\oracle\ora \sqlplus\admin\pupbld sql
connect SYSTEM/manager
set echo on
spool D:\oracle\ora \assistants\dbca\logs\sqlPlusHelp log
@D:\oracle\ora \sqlplus\admin\help\hlpbld sql helpus sql
spool off
spool off
exit
第四: postDBCreation sql
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora \assistants\dbca\logs\postDBCreation log
@D:\oracle\ora \rdbms\admin\utlrp sql编译相关视图 包对象等
shutdown 关闭数据库
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora \assistants\dbca\logs\postDBCreation log
create spfile= D:\oracle\ora \database\spfiledbca ora FROM pfile= D:\oracle\admin\dbca\scripts\init ora
创建服务器参数文件代替文件初始化参数文件 方便有时在不重启数据库的情况下可以使参数生效
从上面可以看到spfile文件的存放位置
startup 启动数据库 创建数据库完成 从上面可以看出 创建数据库有以下 个步骤
Step : 创建相关trace目录文件夹
Step :创建实例 密码 启动方式
Step :创建初始化参数文件 init ora
Step : 连接到实例
Step : 启动实例到nomount状态
Step :创建数据库
Step :创建表空间
Step : 运行脚本创建数据字典
Step : 创建服务器参数文件(这步不是必须的 但oracle建议做这步) 好处会在以后的总结中列出
下面也贴出linux下脚本 和windows下几乎差不多
#!/bin/sh
mkdir /oradata/ora i
mkdir /oradata/ora i/controlfile
mkdir /oradata/ora i/redofile
mkdir /orasys/oracle/admin
mkdir /orasys/oracle/admin/ora i
mkdir /orasys/oracle/admin/ora i/bdump
mkdir /orasys/oracle/admin/ora i/cdump
mkdir /orasys/oracle/admin/ora i/create
mkdir /orasys/oracle/admin/ora i/udump
mkdir /orasys/oracle/admin/ora i/pfile
cp init ora /orasys/oracle/product/ /dbs/
export ORACLE_BASE=/orasys/oracle
export ORACLE_HOME=$ORACLE_BASE/product/
export ORACLE_SID=ora i
export ORA_NLS =$ORACLE_HOME/omon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
export PATH=$PATH:$ORACLE_HOME/bin
echo Add this entry in the oratab: ora i:/orasys/oracle/product/ :Y
/orasys/oracle/product/ /bin/orapwd file=/orasys/oracle/product/ /dbs/orapwora i password=change_on_install
/orasys/oracle/product/ /bin/sqlplus /nolog @/home/oracle/create_script/CreateDB sql
/orasys/oracle/product/ /bin/sqlplus /nolog @/home/oracle/create_script/CreateDBFiles sql
/orasys/oracle/product/ /bin/sqlplus /nolog @/home/oracle/create_script/CreateDBCatalog sql
lishixinzhi/Article/program/Oracle/201311/17648手动创建oracle10g数据库
以创建名为“MYNEWDB”为例
1. 创建必须的文件和文件夹
(1)在D:\oracle\product\10.2.0\admin下建MYNEWDB文件夹
在D:\oracle\product\10.2.0\admin\MYNEWDB下建adump,bdump,cdump,udump文件夹
(2)在D:\oracle\product\10.2.0\oradata下建MYNEWDB文件夹
(3)在D:\oracle\product\10.2.0\db_1\database下建initMYNEWDB.ora文件,内容如下
MYNEWDB.__db_cache_size=356515840
MYNEWDB.__java_pool_size=4194304
MYNEWDB.__large_pool_size=4194304
MYNEWDB.__shared_pool_size=209715200
MYNEWDB.__streams_pool_size=0
*.audit_file_dest='D:\oracle\product\10.2.0/admin/MYNEWDB/adump'
*.background_dump_dest='D:\oracle\product\10.2.0/admin/MYNEWDB/bdump'
*.compatible='10.2.0.1.0'
*.control_files='D:\oracle\product\10.2.0/oradata/MYNEWDB/\control01.ctl','D:\oracle\product\10.2.0/oradata/MYNEWDB/\control02.ctl','D:\oracle\product\10.2.0/oradata/MYNEWDB/\control03.ctl'
*.core_dump_dest='D:\oracle\product\10.2.0/admin/MYNEWDB/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='MYNEWDB'
*.db_recovery_file_dest='D:\oracle\product\10.2.0/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=MYNEWDBXDB)'
*.job_queue_processes=10
*.open_cursors=300
*.pga_aggregate_target=192937984
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=579862528
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='D:\oracle\product\10.2.0/admin/MYNEWDB/udump'
2.建议设置下ORACLE_HOME=D:\oracle\product\10.2.0\db_1,因为下面在执行创建数据库时会自动执行$ORACLE_HOME\rdbms\admin\sql.bsq的脚本,不设怕找不到
3. 创建实例
选择“程序-->运行”,输入“cmd”命令,打开DOS界面
(1)将环境变量ORACLE_SID设置为“MYNEWDB”
C:\SET ORACLE_SID=MYNEWDB
(2)利用ORADIM命令创建MYNEWDB数据库
C:\ORADIM -NEW -SID MYNEWDB -INTPWD MYNEWDB -STARTMODE MANUAL -PFILE D:\oracle\product\10.2.0\db_1\database
注意:ORADMIN是Oracle提供的一个对实例进行管理的工具,可以创建、修改、删除、启动和关闭一个
4、连接并启动实例
1. C:\sqlplus /nolog
2. SQL>connect sys/mynewdb as sysdba
3. SQL>startup nomount
5、使用create database 语句创建数据库
1. SQL>create database MYNEWDB
2. maxlogfiles 10
3. maxlogmembers 5
4. maxdatafiles 20
5. maxloghistory 200
6. maxinstances 5
7. logfile
8. group 1 'D:\oracle\product\10.2.0\oradata\mynewdb\redo01.log' size 10m,
9. group 2 'D:\oracle\product\10.2.0\oradata\mynewdb\redo02.log' size 10m,
10. group 3 'D:\oracle\product\10.2.0\oradata\mynewdb\redo03.log' size 10m
11. datafile 'D:\oracle\product\10.2.0\oradata\mynewdb\system01.dbf' size 100m
12. sysaux datafile 'D:\oracle\product\10.2.0\oradata\mynewdb\sysaux01.dbf' size 50m
13. undo tablespace UNDOTBS1
14. datafile 'D:\oracle\product\10.2.0\oradata\mynewdb\undo01.dbf' size 40m
15. default temporary tablespace temp
16. tempfile 'D:\oracle\product\10.2.0\oradata\mynewdb\temp01.dbf' size 20m
17. extent management local uniform size 128k
18. character set ZHS16GBK
19. national character set AL16UTF16
注意:sysaux是创建10g数据库时必须的,创建9i可以不要
UNDOTBS1这个名字不能改成其他的,否则报错
在执行create database 语句的同时,自动执行$ORACLE_HOME\rdbms\admin\sql.bsq脚本,创建SYSTEM表空间和SYSTEM回退段、建立SYS和SYSTEM账号、建立数据字典基础表、建立数据字典索引、创建预定义角色等。
6、创建附加的表空间(未验证)
用create database语句创建的数据库中只有SYSTEM、UNDOTBS和TEMPTBS三个表空间,还需要创建其他
一些额外的表空间
1. SQL>create tablespace users
2. datafile 'd:\oracle\oradata\mynewdb\users01.dbf' size 100M
3. reuse autoextend on next 1280K maxsize unlitited
4. extend management local
5. SQL>create tablespace index
6. datafile 'd:\oracle\oradata\mynewdb\index01.dbf' size 100M
7. reuse autoextend on next 1280K maxsize unlimited
extend management local
8、运行脚本创建数据字典视图
执行两个脚本语句:
----用于创建数据字典视图,包括V$动态性能视图和它们的同义词,同时将授予PUBLIC角色对这些同义
词的访问权限
1. SQL>@D:\oracle\product\10.2.0\db_1\rdbms\admin\catalog.sql
----用于建立对PL/SQL程序设计的支持
1. SQL>@D:\oracle\product\10.2.0\db_1\rdbms\admin\catproc.sql
9、创建服务器初始化参数文件
1. SQL>create spfile from file='d:\oracle\product\10.2.0\db_1\database\initMYNEWDB.ora'(未验证)
执行该语句将在$ORACLE_HOME\database 目录下创建名为spfileMYNEWDB.ora的服务器初始化参数文件
需要重启数据库
1. SQL>shutdown immediate
2. SQL>connect sys/mynewdb as sysdba
SQL>startup ;
最后注意的地方:因为我在创建数据库的时候没有提示我输入sys和system密码,所以下面我们还需要修改sys密码(就当忘设了),方法如下:
sqlplus /nolog
connect / as sysdba
alter user sys identified by 新密码
alter user system identified by 新密码
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)