Oracle11G安装
1创建Oracle用户
[root@localhost database]# groupadd dba
[root@localhost database]# groupadd oinstall
[root@localhost database]# useradd -g oinstall -G dba -m oracle
[root@localhost database]# passwd oracle
2安装目录配置
[root@localhost database]# mkdir -p /opt/oracle/app/oracle/product
[root@localhost database]# chown -R oracle:oinstall /opt/oracle 设置/opt/oracle 及其子目录的所属主和组 -R 是递归遍历子目录
3修改用户bash shell
[root@localhost database]# su - oracle
[oracle@localhost ~]$ vi ~/.bash_profile
增加如下内容,主要是修改
umask 022
export PATH
export ORACLE_BASE=/opt/oracle/app
export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl ###数据库名
[oracle@localhost ~]$ source !$ 立即生效
source ~/.bash_profile
4修改用户限制
[oracle@localhost ~]$ su
Password:
[root@localhost oracle]# vim /etc/security/limits.conf ##加上下面的参数
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
5修改内核参数
[root@localhost oracle]# vim /etc/sysctl.conf
注销最后这两句
#kernel.shmmax = 68719476736
#kernel.shmall = 4294967296
加上如下参数
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
为使上述配置生效而不重启系统,执行如下命令
# /sbin/sysctl -p
6修改用户配置文件
root下的这个文件对所有用户都生效 而 Oracle用户下的/home/oracle/.bash_profile只对当前用户oracle生效 .表示隐藏文件
[root@localhost oracle]# vim /etc/profile
加入如下参数:下面是设置用户可以打开的文件数 如果用户是oracle并且SHELL目录时/bin/ksh的话 可以打开的文件数是65536
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
[root@localhost oracle]# source !$ 立即生效
source /etc/profile
7桌面下安装
下载linux.x64_11gR2_database_2of2.zip和linux.x64_11gR2_database_1of2.zip 并用rz复制到linux下(这里的两个压缩文件是11.2.0.1会有bug 最好用11.2.0.4 安装过程差别不大)
分别解压得到database文件夹,进入文件夹(桌面环境中操作)
[oracle@localhost database]$ ls
doc install response rpm runInstaller sshsetup stage welcome.html
[oracle@localhost database]$ pwd
/zzxtmp/database
[oracle@localhost database]$ ./runInstaller 之后会出现图形安装 如下图(oracle用户下执行), 需要在oracle用户下进入x-window图像界面执行./runInstaller否则会提示失败(Could not execute auto check for display colors using command /usr/bin/xdpyi)
1、Configure Security Updates 取消安全更新的打钩 然后next 然后选yes
2、Installation Option 选第二个
3、Grid Options
4、Product Languages 添加中文
5、Database Edition 选择数据库版本
6、Installation Location 默认环境变量中一致 直接默认next
7 8、Create Inventory和Operating System Groups都下一步 如果出错说明文件夹所属主设置有问题 检查这句[root@localhost database]# chown -R oracle:oinstall /opt/oracle
9、Prerequisite Checks 检查安装前提条件
可以用yum安装 或者用Centos光盘里面package下的文件进行安装
mount -o loop /dev/cdrom /mnt
cd /mnt/Packages
[root@localhost zzxtmp]# rpm -ivh pdksh-5.2.14-30.x86_64.rpm 这个文件在光盘中是没有的
elfutils-libelf-devel可能也要网上下载 yum可能没有
其他用 yum -y install libaio* glibc* compat-libstdc++-33* gcc-c++* libaio-devel* libgcc* libstdc++* libstdc++-devel* unixODBC-* unixODBC-devel* elfutils-libelf-devel*
全部安装完还是提示有问题的是因为版本过新等等 ,用rpm -q 一个个检查还有问题的项目,如果都安装了就忽略(11.2.0.4好像不会存在版本超了还提示没安装的情况,测试中11.2.0.4最后提示都安装好了才下一步的) 然后下一步 勾选
10 Summary 选Finish 就会开始安装 又是漫长的等待
安装成功后需要root下手动执行两个脚本
[root@localhost oracle]# sh /opt/oracle/oraInventory/orainstRoot.sh
[root@localhost oracle]# sh /opt/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh
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 ... 到此安装结束
[root@localhost oracle]# ls /usr/local/bin/ 其实就在这个目录下生产三个文件
coraenv dbhome oraenv
点ok 再close
以下在桌面环境中命令行输入
建一个数据库
在oracle用户下输入
dbca 新建一个数据库 这里要等待半小时到一小时 ………… 会在/opt/oracle/app/oradata/ 生成数据库文件 就是$ORACLE_BASE/oradata/下
设置监听
netca设置监听
netstat -aln |grep 1521 查看是否有LISTEN
lsnrctl status 查看监听状态
lsnrctl start/stop 启动/关闭监听 重启后要启动才行
linux下面查看oracle实例名方法:在终端输入echo $ORACLE_SID
sqlplus "/as sysdba"
启动的时候遇到下面问题 ORA-01078: failure in processing system parameters(oracle 11g for Asianux3 ORA-01078 and LRM-00109 )
解决办法:将$ORACLE_BASE/admin/数据库名称/pfile目录下的init.ora.012009233838形式的文件copy到$ORACLE_HOME/dbs目录下initoracle.ora即可。(注:initoracle.ora中的oracle为你的实例名 ORACLE_SID)
修改后还出错 ORA-00845: MEMORY_TARGET not supported on this system(原因: 简单来说就是 MEMORY_MAX_TARGET 的设置不能超过 /dev/shm 的大小)
接着修改 /etc/fstab 下的 tmpfs /dev/shm tmpfs defaults,size=1.5G 0 0
重启后再lsnrctl start
然后
sqlplus "/as sysdba"
startup 就不报错了,成功打开数据库 oracle如何查看当前有哪些用户连接到数据库
select * from tab;查看表格
su - oracle
sqlplus "/as sysdba"
startup