ITPub博客

首页 > 数据库 > Oracle > Oracle-XE手工创建数据库

Oracle-XE手工创建数据库

Oracle 作者:哇哈哈825 时间:2014-05-06 09:52:15 0 删除 编辑
先是用Oracle-xe创建数据库(用root)。
rpm -ivh oracle-xe-univ-10.2.0.1-1.0.i386.rpm
完成之后会创建oracle.dba。
基本的配置:
/etc/init.d/oracle-xe configure


这时就可以su - oracle
配置环境变量。
重点是你的sid
cat .bash_profile 
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
export LANG=zh_CN.UTF-8
export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
export ORACLE_BASE=/usr/lib/oracle/xe/app/oracle
export ORACLE_SID=xxxxxxxxxx
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"




修改初始化文件
cat /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/dbs/init$ORACLE_SID.ora
aq_tm_processes=0
audit_file_dest=$ORACLE_BASE/admin/$ORACLE_SID/adump
background_dump_dest=$ORACLE_BASE/admin/$ORACLE_SID/bdump
compatible=10.2.0.1.0
control_files=$ORACLE_BASE/oradata/$ORACLE_SID/control01.ctl, $ORACLE_BASE/oradata/$ORACLE_SID/
control02.ctl, $ORACLE_BASE/oradata/$ORACLE_SID/control03.ctl
core_dump_dest=$ORACLE_BASE/admin/$ORACLE_SID/cdump
db_block_size=8192
db_domain=""
db_file_multiblock_read_count=16
db_name=$ORACLE_SID
instance_name=$ORACLE_SID
dispatchers="(PROTOCOL=TCP) (SERVICE=$ORACLE_SIDXDB)"
job_queue_processes=10
nls_length_semantics=BYTE
open_cursors=300
pga_aggregate_target=94371840
processes=150
remote_login_passwordfile=EXCLUSIVE
resource_manager_plan=""
sessions=170
sga_target=285212672
undo_management=AUTO
undo_retention=900
undo_tablespace=UNDOTBS1
user_dump_dest=$ORACLE_BASE/admin/$ORACLE_SID/udump




###有了这个配置,在sqlplus里面startup的时候就会把系统日志写到$ORACLE_BASE/admin/$ORACLE_SID/bdump 。




创建必要的目录(可以参考/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/config/scripts/):XE.sh
mkdir -p /usr/lib/oracle/xe/app/oracle/admin/$ORACLE_SID/adump
mkdir -p /usr/lib/oracle/xe/app/oracle/admin/$ORACLE_SID/bdump
mkdir -p /usr/lib/oracle/xe/app/oracle/admin/$ORACLE_SID/cdump
mkdir -p /usr/lib/oracle/xe/app/oracle/admin/$ORACLE_SID/dpdump
mkdir -p /usr/lib/oracle/xe/app/oracle/admin/$ORACLE_SID/pfile
mkdir -p /usr/lib/oracle/xe/app/oracle/admin/$ORACLE_SID/udump
mkdir -p /usr/lib/oracle/xe/app/oracle/admin/cfgtoollogs/dbca/$ORACLE_SID
mkdir -p /usr/lib/oracle/xe/app/oracle/admin/$ORACLE_SID/dbs
mkdir -p /usr/lib/oracle/xe/app/oracle/flash_recovery_area
mkdir -p /usr/lib/oracle/xe/oradata/$ORACLE_SID
mkdir -p /usr/lib/oracle/xe/app/oracle/oradata/$ORACLE_SID/




创建建库用的sql脚本:
cat createdb.sql 
CREATE DATABASE ctetl
  MAXINSTANCES 1
  MAXLOGHISTORY 1 
  MAXLOGFILES 5
  MAXLOGMEMBERS 5 
  MAXDATAFILES 100
  DATAFILE '/usr/lib/oracle/xe/app/oracle/oradata/ctetl/system01.dbf' size 50M  reuse autoextend on next 1m maxsize unlimited extent management local
sysaux datafile '/usr/lib/oracle/xe/app/oracle/oradata/ctetl/sysaux01.dbf' size 100m
  UNDO TABLESPACE UNDOTBS DATAFILE '/usr/lib/oracle/xe/app/oracle/oradata/ctetl/undotbs01.dbf' size 50M 
  AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED  
   DEFAULT TEMPORARY TABLESPACE tempts  TEMPFILE '/usr/lib/oracle/xe/app/oracle/oradata/ctetl/temp01.dbf' size 50M
  CHARACTER SET US7ASCII  
  NATIONAL CHARACTER SET AL16UTF16  
  LOGFILE GROUP 1 ('/usr/lib/oracle/xe/app/oracle/oradata/ctetl/redo01.log') size 100M, 
  GROUP 2 ('/usr/lib/oracle/xe/app/oracle/oradata/ctetl/redo02.log') size 100M, 
  GROUP 3 ('/usr/lib/oracle/xe/app/oracle/oradata/ctetl/redo03.log') size 100M;




现在就是创建数据库了。
###注意从装好rpm包到现在使用的都应该是oracle用户。
sqlplus "/as sysdba"
SQL> startup nomount
SQL> @/usr/lib/oracle/xe/createdb.sql
SQL> create user USER identified by  PASSWD default tablespace users;
SQL> grant resource,connect,dba to  ctetl;
@/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/rdbms/admin/catalog.sql
@/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/rdbms/admin/catproc.sql

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29635878/viewspace-1154774/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-04-30

  • 博文量
    43
  • 访问量
    46137