1. 创建DBA组
2. 创建oracle用户 oracle/oinstall
3. 授权oracle用户对目录有读写权限
4. 在.profile文件中设置环境变量
5. 在安装路径上创建oracle结构目录
6. 设置操作系统核心参数
7. 重新启动系统并检查各参数
RHAS3上安装Oracle10g===========================================================
作者: xsb(http://xsb.itpub.net)
发表于:2005.06.22 12:18
分类: Oracle
出处:http://xsb.itpub.net/post/419/33027
---------------------------------------------------------------
0.安装RHELAS3
自定义安装,开发工具全装,KDE图形环境
1.准备安装文件
2.设置核心参数Set Kernel Parameters
# vi /etc/sysctl.conf
在该文件末尾加入如下内容:
#-----------Begin from here--------------------------------------
kernel.shmall = 2097152
kernel.shmmax = 536870912 (512物理内存的标准, 64MB)
2147483648 (1024物理内存的标准, 256MB)
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 = 262144 或者 4194304
net.core.rmem_max = 262144 或者 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
#--------------End here--------------------------------------------
编辑完之后,保存,
执行 # /sbin/sysctl -p 命令操作来使我们所做的变更生效.
注:上面kernel.shmmax/kernel.sem等是典型的核心参数配置.您可能需要根据您的实际环境进行适当的变动
然后,应该检查一下上面的操作是否正确:
/sbin/sysctl -a | grep sem
/sbin/sysctl -a | grep shm
/sbin/sysctl -a | grep file-max
/sbin/sysctl -a | grep ip_local_port_range
为Oracle用户设定Shell的限制
一般来说,出于性能上的考虑,还需要需要进行如下的设定,以便改进Oracle用户的有关 nofile(可打开的文件描述符的最大数)和nproc(单个用户可用的最大进程数量)
# vi /etc/security/limits.conf
# 添加如下的行
soft nproc 2047
hard nproc 16384
soft nofile 1024
hard nofile 65536
添加如下的行到/etc/pam.d/login 文件:
session required /lib/security/pam_limits.so
session required pam_limits.so
编辑 /etc/profile 文件,添加如下部分:
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
之后,执行$ unlimit 验证一下.
3.安装RPM软件包
在这个版本的RHEL上安装Oracle,必须要有几个软件包. 确认以下 rpm包都已经安装:
make-3.79
binutils-2.11
openmotif-2.2.2-16
setarch-1.3-1
compat-db-4.0.14.5
compat-gcc-7.3-2.96.122
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
# rpm -qa | grep compat
# 在我的机器上输出如下:
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
compat-glibc-7.x-2.2.4.32.5
compat-db-4.0.14-5
compat-gcc-7.3-2.96.122
# rpm -qa | grep openmotif
openmotif-devel-2.2.2-16
openmotif-2.2.2-16
# rpm -qa | grep setarch
setarch-1.3-1
# From RedHat AS3 Disk 2
cd /mnt/cdrom/RedHat/RPMS
rpm -Uvh setarch-1.3-1.i386.rpm
rpm -Uvh openmotif-2.2.2-16.i386.rpm
# From RedHat AS3 Disk 3
cd /mnt/cdrom/RedHat/RPMS
rpm -Uvh compat-libstdc++-7.3-2.96.122.i386.rpm
rpm -Uvh compat-libstdc++-devel-7.3-2.96.122.i386.rpm
rpm -Uvh compat-db-4.0.14-5.i386.rpm
rpm -Uvh compat-gcc-7.3-2.96.122.i386.rpm
rpm -Uvh compat-gcc-c++-7.3-2.96.122.i386.rpm
此外,最好验证一下 gcc和glibc的版本(要求是gcc-3.2.3-2 或者更高)
# gcc -v
# rpm -q glibc
4.创建用户和组:
groupadd oinstall
groupadd dba
useradd –d /u01 -g oinstall -G dba oracle
passwd oracle
Create the directories in which the Oracle software will be installed:
mkdir -p /u01/app/oracle/product/10.1.0/db_1
chown -R oracle.oinstall /u01
5.设置Oracle变量.bash_profile:
登录为oracle用户
# su – oracle
$ cd
$ vi .bash_profile
#添加如下内容,你的具体值应该不会和这个完全相同.
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.1.0/db_1
export ORACLE_SID=TEST
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export LC_CTYPE=en_US.UTF-8
然后执行
$ source .bash_profile
使环境变量生效. /u01/app/oracle 等目录应该建立好并做合适的授权.
set |grep ORACLE
6.开始安装Installation
以oracle账户在运行级别5下登录
cd /mnt/oin/10g/disk1
./runInstaller
7.Post Installation
Finally edit the /etc/oratab file setting the restart flag for each instance to 'Y':
TSH1:/u01/app/oracle/product/10.1.0:Y
其他的步骤比较清晰,不再赘述.
最后系统会提示你运行root.sh文件.按照提示做即可.
FAQ (在Linux平台安装Oracle比较常见)
1. 不能启动安装界面.运行runInstaller提示信息类似如下:
xlib:connection to "localhost:0.0" refused by server
xlib:client is not authorized to connect to server
Exception in thread "main" java.lang.InternalError:can't connect to x11 window server using "localhost:0.0"
at .......
解决办法: 设定你的DISPLAY环境参数.# export DISPLAY= your_IPaddress :0.0把your_IPaddress换成你的IP.或者
用root简单的执行一下# xhost + (要注意这样会有安全上的隐患)
2.安装界面显示很多"口口"样子的乱码
解决办法:查看locale输出
# locale
LANG=en_US.UTF-8
LC_CTYPE=zh_CN.GB18030
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
执行#export LC_CTYPE=en_US.UTF-8 然后重新调用安装程序.
[root@orclas3 u01]# su root
[root@orclas3 u01]# cd /u01/app/oracle/oraInventory/
[root@orclas3 oraInventory]# ./orainstRoot.sh
Changing permissions of /u01/app/oracle/oraInventory to 770.
Changing groupname of /u01/app/oracle/oraInventory to oinstall.
The execution of the script is complete
[root@orclas3 oraInventory]# cd ..
[root@orclas3 oracle]# cd /u01/app/oracle/product/10.1.0/ db_1/
[root@orclas3 db_1]# ./root.sh
Running Oracle10 root.sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/10.1.0/db_1
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
/u01/app/oracle/product/10.1.0/db_1
Windows下创建数据库使用DBCA工具:程序打开 或者 执行dbca命令既可。
UNIX环境下在$Oracle_HOME/bin下运行DBCA实用程序
UNIX下oracle实例的启动:
Oracle实例启动命令startup
用startup命令启动oracle10gR2数据库实例
Shell:
sqlplus /nolog
conn sys/nicai as sysdba
shutdown immediate;
startup;
或者:
Shell: 输入sqlplus /nolog
->输入conn sys/change_on_install
->输入shutdown immediate;
->输入startup nomount;
->输入startup mount;
->输入startup open;
startup分3个步骤:
nomount:启动初始化参数文件规定的实例;
mount:加载控制文件;
open:加载数据文件;
她的具体参数如下:
SQL> help startup
STARTUP -------
Starts an Oracle instance with several options, including mounting,
and opening a database.
STARTUP [FORCE] [RESTRICT] [PFILE=filename] [EXCLUSIVE]
[PARALLEL [RETRY]] [SHARED [RETRY]]
[MOUNT [dbname] | OPEN [open_options] [dbname] | NOMOUNT]
where open_options has the following syntax:
READ {ONLY|WRITE [RECOVER]} | RECOVER
进入CMD
C:\LSNRCTL
C:\LSNRCTL>start 执行start命令之后你会看到屏幕闪过很多字符,这些都是启动的一些配置文件。
C:\LSNRCTL>exit 这是退出C:LSNRCTL>
C:\NET START ORACLESERVICEMYORACLE 这个时候数据库已经起来了
C:\SQLPLUS SYS/MYORACLE@MYORACLE 如果不出意外你会进入SQLPLUS
SQL> show user
USER 为 "SYS"
SQL> select username,ACCOUNT_STATUS,EXPIRY_DATE from dba_users;
USERNAME ACCOUNT_STATUS EXPIRY_DATE
------------------------------ -------------------------------- -------------
MGMT_VIEW OPEN
SYS OPEN
SYSTEM OPEN
DBSNMP OPEN
SYSMAN OPEN
OUTLN EXPIRED & LOCKED 12-12月-06
MDSYS EXPIRED & LOCKED 12-12月-06
ORDSYS EXPIRED & LOCKED 12-12月-06
EXFSYS EXPIRED & LOCKED 12-12月-06
DMSYS EXPIRED & LOCKED 12-12月-06
WMSYS EXPIRED & LOCKED 12-12月-06
SQL> alter user OUTLN account unlock;
用户已更改。
SQL> grant connect to outln identified by zhao123;
授权成功。
SQL> connect sys/nicai as sysdba
已连接。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 209715200 bytes
Fixed Size 1248116 bytes
Variable Size 79692940 bytes
Database Buffers 121634816 bytes
Redo Buffers 7139328 bytes
数据库装载完毕。
数据库已经打开。
从dba_temp_files数据字典中查询临时表空间信息:
SQL> select tablespace_name,file_name from dba_temp_files;
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP01.DBF
从v$controlfile数据字典中查询控制文件信息
SQL> select * from v$controlfile;
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL01.CTL
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL02.CTL
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL03.CTL
从v$logfile数据字典中查询日志文件信息
SQL> select * from v$logfile;
GROUP# STATUS TYPE
MEMBER
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG
从v$database数据字典中查询数据库是否是归档模式
SQL> select dbid,name,log_mode from v$database;
DBID NAME LOG_MODE
1136768700 ORCL NOARCHIVELOG
显示归档文件所在路径:SQL> show parameter log_archive-dest
Oracle数据库体系结构总结:
数据文件是存放实际数据的物理文件。
表空间是包含一个或多个数据文件的逻辑结构。
一个数据文件只能归到某一个表空间上。
数据文件可以在创建表空间时创建,也可以增加的方式创建。
数据文件的大小一般与操作系统限制有关。
控制文件主要存放有数据文件、日志文件及数据库的基本信息,一般在数据打开时访问。
日志文件存放日志信息,在数据库活动时使用。
临时表空间是用于存放排序的磁盘空间。
Ctrl+Enter 发布
发布
取消