最近安装oracle,总是报错。参考了好多文档后,终于安装成功了,不容易啊。

环境 内存2g

硬盘40g

操作系统CentOS-6.5-x86_64

oracle数据库文件

linux.x64_11gR2_database_1of2.zip  1.2G

linux.x64_11gR2_database_2of2.zip  1.1G

1 第一还是安装各种依赖包(直接用的是网络安装,当然本地光盘里也可以)

yum groupinstall "Development Tools" -y

[root@cc Desktop]# yum install binutils compat-libstdc++-33 elfutils elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel -y

2 创建oracle用户,组以及安装目录

[root@cc Desktop]# groupadd oinstall

[root@cc Desktop]# groupadd dba

[root@cc Desktop]# useradd -g oinstall -G dba oracle

[root@cc Desktop]# id oracle

uid=500(oracle) gid=500(oinstall) groups=500(oinstall),501(dba)

passwd oracle

[root@cc Desktop]# mkdir -p /oracle/11g

[root@cc Desktop]# chown -R oracle:oinstall /oracle

[root@cc Desktop]# chmod 775 /oracle/

说明:

-g:指定用户所属的群组

-G:指定用户所属的附加群组

-u:指定用户ID

-d:指定用户主目录

-s:指定用户登录shell

-m:若用户主目录不存在,则自动创建。

如果最后修改设定密码也为oracle,系统会提示密码过于简单,此时无需理会,再次输入回车即可


3 修改内核参数

 vim /etc/sysctl.conf 

 末尾增加如下

net.ipv4.ip_local_port_range= 9000 65500

fs.file-max = 6815744

kernel.shmall = 10523004

kernel.shmmax = 6465333657

kernel.shmmni = 4096

kernel.sem = 250 32000 100128

net.core.rmem_default=262144

net.core.wmem_default=262144

net.core.rmem_max=4194304

net.core.wmem_max=1048576

fs.aio-max-nr = 1048576

4  sysctl -p 使内核参数立即生效

5 修改系统资源限制 

vim /etc/security/limits.conf

末尾增加如下:

# End of file

oracle   soft  nproc   2047

oracle   hard  nproc   16384

oracle   soft  nofile   1024

oracle   hard  nofile   65536

6  vim /etc/pam.d/login

session    required    pam_namespace.so  #在此行下面添加一条pam_limits.so

vim /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



8 设置oracle环境变量

[oracle@cc ~]$ cd /home/oracle/

[oracle@cc ~]$ vim .bash_profile

末尾增加:


ORACLE_BASE=/oracle

ORACLE_HOME=$ORACLE_BASE/11g

下面的配置是安装oracle后新建的oracle实例的名字 

ORACLE_SID=orcl

PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH 

9 source .bash_profile  source .bash_profile  立立即生效上面配置


10 /etc/init.d/iptables stop关闭防火墙

vim /etc/selinux/config 关闭selinux

11 安装oracle 

重新启动系统,以oracle用户进入系统,然后解压两个压缩包

[oracle@cc ~]$ unzip linux_11gR2_database_1of2.zip 

[oracle@cc ~]$ unzip linux_11gR2_database_2of2.zip 

[oracle@cc ~]$ pwd

/home/oracle


[oracle@cc ~]$ LANG=en      防止中文安装乱码 

[oracle@cc ~]$ cd database/

[oracle@cc database]$ ls

doc  install  response  rpm  runInstaller  sshsetup  stage  welcome.html

[oracle@cc database]$ ./runInstaller (运行安装脚本)





终于进入图形安装界面 啊。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。


安装时报了[INS-06101]  IP address of localhost could not be determined
出现这种错误是因为主机名和/etc/hosts 文件不一致,只需要把主机名和其IP 写入/etc/hosts 文件,就ok了。


****************

接着往下安装时又报[INS-30011] The string password entered does not conform to the Oracle recommended standards
原因:这个是Oracle为了安全起见,要求密码强度比较高,



输入邮件地址信息,这里也可以不输入,直接进行下一步

centos6.5安装oracle11gr2_oracle

 选择安装数据库软件并创建数据

centos6.5安装oracle11gr2_oracle_02

选择版本为Server

centos6.5安装oracle11gr2_oracle_03



选择单例数据库



centos6.5安装oracle11gr2_oracle_04

选择安装模式-高级



centos6.5安装oracle11gr2_oracle_05



centos6.5安装oracle11gr2_oracle_06

选择安装版本


centos6.5安装oracle11gr2_oracle_07


  选择安装目录,这里保持默认即可

centos6.5安装oracle11gr2_oracle_08







centos6.5安装oracle11gr2_oracle_09

centos6.5安装oracle11gr2_oracle_10

centos6.5安装oracle11gr2_oracle_11



centos6.5安装oracle11gr2_oracle_12


启用oracle企业管理控制台OEM


centos6.5安装oracle11gr2_oracle_13

选择数据库文件的目录,保持默认值即可

centos6.5安装oracle11gr2_oracle_14

centos6.5安装oracle11gr2_oracle_15

centos6.5安装oracle11gr2_oracle_16





centos6.5安装oracle11gr2_oracle_17

centos6.5安装oracle11gr2_oracle_18

以root身份运行着两个脚本

[root@cc ~]# sh /home/oracle/oraInventory/orainstRoot.sh 

[root@cc ~]# sh /oracle/11g/root.sh 


centos6.5安装oracle11gr2_oracle_19

安装成功***********************

Oracle常用命令
[root@oracledb ~]# su –oracle
[oracle@oracledb ~]# sqlplus / as sysdba
SQL> startup #启动数据库实例
SQL> shutdown immediate #关闭数据库实例
SQL> select * from tab; #查看所有表
SQL> select name from v$datafile #查看数据库存放目录
SQL> show parameter service #查看服务名
SQL> select * from v$instance; #查看实例名
SQL> select name from v$database; #查看数据库名
SQL> select * fromdba_users; #查看所有用户信息
SQL> select username,password from dba_users; #只查询用户和密码
SQL> select * fromv$pwfile_users; #查看具有sysdba权限的用户
SQL> select * fromdba_ustats; #查看当前用户信息
SQL> select * fromuser_sys_privs #查看当前用户系统权限
SQL> select * fromuser_role_privs #查看当前用户角色
SQL> select * fromdba_sys_privs #查看指定用户所具有的系统权限
SQL> select * fromv$version #查看oracle版本
SQL> select * fromuser_views #查看视图信息
[root@oracledb ~]# lsnrctl start #开启远程监听端口