一.创建oracle控制用户和用户组
groupadd oracle
useradd -g oracle oracle
passwd oracle
二.修改linux核心配置
1.修改用户的SHELL限制
vim /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
2.修改/etc/pam.d/login 文件
session required /lib/security/pam_limits.so
session required pam_limits.so
3.修改linux内核,修改/etc/sysctl.conf文件
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range=9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
sysctl –p(及时生效)
4.修改/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
三.创建数据库软件目录和数据文件存放目录
mkdir /home/oracle/app
chown -R oracle:oracle /home/oracle/app
四.修改环境变量
vim /home/oracle/.bash_profile
export ORACLE_BASE=/home/oracle/app
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 #oracle数据库路径
export ORACLE_SID=orcl2 #oracle启动数据库实例名
export ORACLE_TERM=xterm #xterm窗口模式安装
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH #添加系统环境变量
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib #添加系统环境变量
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #设置Oracle客户端字符集,必须与Oracle安装时设置的字符集保持一致,如:ZHS16GBK,否则出现数据导入导出中文乱码问题
#source /home/oracle/.bash_profile
要支持图形化安装
( 在Linux/Unix类操作系统上, DISPLAY用来设置将图形显示到何处. 直接登陆图形界面或者登陆命令行界面后使用startx启动图形, DISPLAY环境变量将自动设置为:0:0, 使用xdpyinfo可以查看当前显示的详细信息)
vim /home/oracle/.bashrc
在末尾加一行
export DISPLAY=localhost:1
#source /home/oracle/.bashrc
$su - oracle
$ xhost +
出现access control disabled, clients can connect from any host
则正确
五.检查安装包(一般默认装好了)
binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
elfutils-libelf-devel-static-0.125
gcc-4.1.2
gcc-c++-4.1.2
glibc-2.5-24
glibc-common-2.5
glibc-devel-2.5
glibc-headers-2.5
kernel-headers-2.6.18
ksh-20060214
libaio-0.3.106
libaio-devel-0.3.106
libgcc-4.1.2
libgomp-4.1.2
libstdc++-4.1.2
libstdc++-devel-4.1.2
make-3.81
sysstat-7.0.2
六.安装
unzip linux_11gR2_database_1of2.zip linux_11gR2_database_2of2.zip
防止乱码
export LANG=en
运行安装
./runInstaller
七.创建监听
先创建监听在创建数据库,否则可能会有控制文件不对的情况
在终端直接输入命令netca(图形化安装)
六.建立数据库
在终端输入命令: dbca(图形化安装)
九.启动:
一.启动
1.#su - oracle 切换到oracle用户且切换到它的环境
2.$lsnrctl status 查看监听及数据库状态
3.$lsnrctl start 启动监听
4.$sqlplus / as sysdba 以DBA身份进入sqlplus
5.SQL>startup 启动db
二.停止
1.#su - oracle 切换到oracle用户且切换到它的环境
2.$lsnrctl stop 停止监听
3.$sqlplus / as sysdba 以DBA身份进入sqlplus
4.SQL>shutdown immrediate 关闭db
十.可能出现错误;
1.安装过程中遇到乱码:
这是因为oracle不支持中文造成的。可以先使用命令 export LANG=en将环境临时换成英文,然后再安装。
2.安装无法进入图形化
export DISPLAY=localhost:1
xhost +
3.可能使用dbstart命令来启动数据库更方便一些,但初次安装完oracle之后使用dbstart命令会报这样的错误(dbshut一样修改)
1. ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener
2. Usage: /u01/app/oracle/product/11.2/db/bin/dbstart ORACLE_HOME
出现这样错误的原因是由于没有设置ORACLE_HOME_LISTNER的原因
su - oracle
cd app
查找 find -name dbstart
vim /home/oracle/app/product/11.2.0/db/bin/dbstart
把ORACLE_HOME_LISTNER=$1 改为
ORACLE_HOME_LISTNER=$ORACLE_HOME
要在/etc/oratab这个文件中的实例最后的N改成Y,如下
orcl:/home/oracle/app/product/11.2.0/db:Y
启动数据库实例,分为两步:第一步,启动监听;第二步,启动数据库实例。
先启动监听 lsnrctl start
启动实例 dbstart
关闭数据库实例dbshut
关闭监听lsnrctl stop
4.远程连接数据库出错
su - oracle
cd app
查找 find -name listener.ora
vim product/11.2.0/db_1/network/admin/listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /home/oracle/app/product/11.2.0/db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = NIE)
(ORACLE_HOME = /home/oracle/app/product/11.2.0/db_1)
(SID_NAME = NIE)
)
)
红色为新增
然后重启Oracle的监听器