root账户执行:
#groupadd oinstall
#groupadd dba
#useradd -g oinstall -G dba oracle
#passwd oracle
创建oracle基本目录:
#mkdir -p /u01/app/oracle
#chown -R oracle:oinstall /u01
#chmod -R 775 /u01
/u01 由根目录拥有。
/u01/app 由根目录拥有。
/u01/app/oracle 由具有 775 权限的 oracle:oinstall 拥有。该所有权和权限允许 OUI 在 /u01/app/oracle/oraInventory 路径下创建 oraInventory 目录。
配置内核参数
RHEL/OEL 5 上的 Oracle 数据库 10g 第 2 版需要以下所示的内核参数设置。给出的值都是最小值,因此如果您的系统使用一个更大的值,则不要进行更改:
#vi /etc/sysctl
kernel.shmmax = 4294967295
kernel.shmall = 268435456
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=1048576
net.core.rmem_max=1048576
net.core.wmem_default=262144
net.core.wmem_max=262144
启动生效
#sysctl -p
为 Oracle 用户设置 Shell 限制
要改善 Linux 系统上的软件性能,Oracle 建议您提高 oracle 用户的 shell 限制:
Shell 限制 limits.conf 中的条目 硬限制
最大打开文件描述符数 nofile 65536
可用于单个用户的最大进程数 nproc 16384
要进行这些更改,以 root 用户身份运行以下命令:
#cat >> /etc/security/limits.conf <<EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
EOF
#cat >> /etc/pam.d/login <<EOF
session required /lib/security/pam_limits.so
session required pam_limits.so
EOF
为“oracle”UNIX 帐户更新默认的 shell 启动文件。
对于 Bourne、Bash 或 Korn shell,通过运行以下命令将以下行添加到 /etc/profile 文件:
#cat >> /etc/profile <<EOF
if [ \$USER = "oracle" ]; then
if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
EOF
#su - oracle
安装客户端:
配置oracle环境变量:
$vi ~/.bash_profile
export ORALCE_BASE=/u01/app/oracle
export ORALCE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORALCE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
生效环境变量:
$source ~/.bash_profile
手动创建库:
创建initorcl.ora参数文件:
vi initorcl.ora
orcl.__java_pool_size=4194304
orcl.__large_pool_size=4194304
orcl.__shared_pool_size=226492416
orcl.__streams_pool_size=0
*.audit_file_dest='/u01/app/oracle/admin/orcl/adump'
*.background_dump_dest='/u01/app/oracle/admin/orcl/bdump'
*.compatible='10.2.0.1.0'
*.control_files='/u01/app/oracle/oradata/orcl/control01.ctl','/u01/app/oracle/oradata/orcl/control02.ctl','/u01/app/oracle/oradata/orcl/control03.ctl'
*.core_dump_dest='/u01/app/oracle/admin/orcl/cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='orcl'
*.db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
*.job_queue_processes=10
*.log_archive_dest_1='location=/u01/app/oracle/arch'
*.log_archive_dest_2='location=usr_db_recovery_file_dest'
*.open_cursors=300
*.pga_aggregate_target=299892736
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=901775360
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/u01/app/oracle/admin/orcl/udump'
创建数据库脚本文件:
dbca.sql
CREATE DATABASE orcl
USER SYS IDENTIFIED BY tiger
USER SYSTEM IDENTIFIED BY tiger
LOGFILE GROUP 1 ('/u01/app/oracle/oradata/orcl/redo01.log') SIZE 100M,
GROUP 2 ('/u01/app/oracle/oradata/orcl/redo02.log') SIZE 100M,
GROUP 3 ('/u01/app/oracle/oradata/orcl/redo03.log') SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACTER SET US7ASCII
NATIONAL CHARACTER SET AL16UTF16
DATAFILE '/u01/app/oracle/oradata/orcl/system01.dbf' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/u01/app/oracle/oradata/orcl/sysaux01.dbf' SIZE 325M REUSE
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE '/u01/app/oracle/oradata/orcl/temp01.dbf'
SIZE 20M REUSE
UNDO TABLESPACE undotbs1
DATAFILE '/u01/app/oracle/oradata/orcl/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
创建密码文件:
$orapwd file=$ORACLE_HOME/dbs/orapwdorcl password=tiger entries=10
创建数据库基本目录:
$mkdir -p /u01/app/oracle/admin/orcl/adump
$mkdir -p /u01/app/oracle/admin/orcl/bdump
$mkdir -p /u01/app/oracle/admin/orcl/udump
$mkdir -p /u01/app/oracle/admin/orcl/cdump
$mkdir -p /u01/app/oracle/flash_recovery_area
$mkdir -p /u01/app/oracle/arch
$mkdir -p /u01/app/oracle/oradata/orcl
#sqlplus "/ as sysdba"
#startup nomount pfile=/soft/initorcl.ora
创建表空间:
CONNECT SYS/password AS SYSDBA
-- create a user tablespace to be assigned as the default tablespace for users
CREATE TABLESPACE users LOGGING
DATAFILE '/u01/app/oracle/oradata/orcl/users01.dbf'
SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
-- create a tablespace for indexes, separate from user tablespace
CREATE TABLESPACE indx LOGGING
DATAFILE '/u01/app/oracle/oradata/orcl/indx01.dbf'
SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
alter database default tablespace users;
运行脚本:
CONNECT SYS/password AS SYSDBA
@/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/catalog.sql
@/u01/app/oracle/product/10.2.0/db_1/rdbms/admin/catproc.sql
EXIT
脚本描述:
CATALOG.SQL Creates the views of the data dictionary tables, the dynamic performance views, and public synonyms for many of the views. Grants PUBLIC access to the synonyms.
CATPROC.SQL Runs all scripts required for or used with PL/SQL.
查看数据库启动状态:
select status from v$instance;
结果:open
说明手动创建数据库成功。