最近安装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
7
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为了安全起见,要求密码强度比较高,
输入邮件地址信息,这里也可以不输入,直接进行下一步
选择安装数据库软件并创建数据
选择版本为Server
选择单例数据库
选择安装模式-高级
选择安装版本
选择安装目录,这里保持默认即可
启用oracle企业管理控制台OEM
选择数据库文件的目录,保持默认值即可
以root身份运行着两个脚本
[root@cc ~]# sh /home/oracle/oraInventory/orainstRoot.sh
[root@cc ~]# sh /oracle/11g/root.sh
安装成功***********************
Oracle常用命令
[root@oracledb ~]# su �Coracle
[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 #开启远程监听端口