第一次手工建立数据,心情是格外的高兴!
我们要建立数据库名称为:WWW
创建数据数据的方式:
1.OUI
2.Oracle DBCA
3.手工创建。
创建的精简步骤(其中可以有很多的可选步骤就略过)如下:
1.设置环境变量:
ORACLE_HOME、ORACLE_SID、ORACLE_BASE、ORACLE_NLS33(Oracle字符集)
PATH、LD_LIBRARY_PATH (C环境的库位置)
最重要的就是ORACLE_SID
说明:
1.SID最长为12和DATABASE名称最长为8,SID和Database名称要一样,所以设置SID最长为8
2.建立数据库前,请把运行中的数据库关闭(如果你没有的话,就无所谓了)。
3.删除一个数据库,可以通过ODBC,也可以通过手动。
手动删除数据库:
总的来说就是删除三个地方,分别如下:
假如库名叫做:EXP
1.$ORACLE_BASE/admin/EXP
2.$ORACLE_HOME/dbs/initEXP.ora
.$ORACLE_HOME/dbs/spfileEXP.ora 这个目录比较多,但凡是含有SID名称的文件删除就是了
3.../oradata/EXP
以上就能把一个数据库完全删除掉。
2.生成一个Pfile文件,如下:
这个文件命名为initWWW.ora
- WWW.__db_cache_size=188743680
- WWW.__java_pool_size=4194304
- WWW.__large_pool_size=4194304
- WWW.__shared_pool_size=92274688
- WWW.__streams_pool_size=0
- audit_file_dest='/oracle/app/admin/WWW/adump'
- background_dump_dest='/oracle/app/admin/WWW/bdump'
- compatible='10.2.0.1.0'
- control_files='/oradata/WWW/control01.ctl','/oradata/WWW/control02.ctl','/oradata/WWW/control03.ctl'
- core_dump_dest='/oracle/app/admin/WWW/cdump'
- db_block_size=8192
- db_domain=''
- db_file_multiblock_read_count=16
- db_name='WWW'
- db_recovery_file_dest='/oracle/app/flash_recovery_area'
- db_recovery_file_dest_size=2147483648
- dispatchers='(PROTOCOL=TCP) (SERVICE=WWWXDB)'
- job_queue_processes=10
- open_cursors=300
- pga_aggregate_target=97517568
- processes=150
- remote_login_passwordfile='EXCLUSIVE'
- sga_target=293601280
- undo_management='AUTO'
- undo_tablespace='UNDOTBS1'
- user_dump_dest='/oracle/app/admin/WWW/udump'
3.生成一个密码文件:
- $orapwd file=orapwdWWW password=oracle entries=10
此时就会在,$ORACLE_HOME/dbs/下面生成一个名为:orapwdWWW
4.创建SPFILE并启动实例:
- SQL>create spfile from pfile;
- SQL>startup nomount ;
前提条件:
要有一下目录:
/oracle/app/admin/WWW/adump
/oracle/app/admin/WWW/bdump
/oracle/app/admin/WWW/cdump
/oracle/app/admin/WWW/udump
/oradata/WWW/
5.创建库:
- spool dbcreate.log;
- CREATE DATABASE "WWW"
- sysaux datafile '/oradata/WWW/sysaux.dbf'
- size 10M
- AUTOEXTEND on
- NEXT 10M
- MAXSIZE UNLIMITED
- MAXDATAFILES 500
- MAXINSTANCES 8
- MAXLOGFILES 32
- CHARACTER SET "UTF8"
- NATIONAL CHARACTER SET AL16UTF16
- ARCHIVELOG
- DATAFILE
- '/oradata/WWW/system01.dbf' size 300M
- EXTENT MANAGEMENT LOCAL
- DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE '/oradata/WWW/tempts01.dbf' size 100M extent management local
- UNDO TABLESPACE "UNDOTBS1"
- DATAFILE '/oradata/WWW/undotbs01.dbf' size 200M
- LOGFILE
- GROUP 1 (
- '/oradata/WWW/redo01a.rdo',
- '/oradata/WWW/redo01b.rdo'
- ) size 100M,
- GROUP 2 (
- '/oradata/WWW/redo02a.rdo',
- '/oradata/WWW/redo02b.rdo'
- ) size 100M,
- GROUP 3 (
- '/oradata/WWW/redo03a.rdo',
- '/oradata/WWW/redo03b.rdo'
- ) size 100M
- ;
- spool off
当然前提条件:
1.initWWW.ora中的参数要与create1.sql的参数要统一不能有偏差!
将上面文件保存并改名为:
create1.sql
其中红色写的部分,是我出过错误的地方。加入后就能顺利通过。
spool 是生成一个日志。
执行:
- SQL>@$ORACLE_HOME/dbs/create1.sql
6.执行系统脚本:
- SQL>@?/rdbms/admin/catalog.sql
- SQL>@?/rdbms/admin/catproc.sql
- SQL>@?/sqlplus/admin/pupbld.sql
其中就的?指的就是:$ORACLE_HOME
7.关闭并重启开启数据库。
- SQL>shutdown immediate;
- SQL>starup;