说明

在Vmware虚拟机上搭建的环境,安装过程中,也遇到了几个问题,此处不详细说明,下一篇专门总结遇到的问题及解决方法。


系统及环境

操作系统: Centos7.0

数据库版本:Oracle11G R2

系统内存:3G

硬盘:40G




安装准备


修改主机名

# sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=Oracletest/" /etc/sysconfig/network

# hostname Oracletest


添加主机名与IP对应记录

# vi /etc/hosts

10.1.23.186     Oracletest


#关闭Selinux

# sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config  

# setenforce 0


安装步骤


1、安装依赖包

# yum -y install  gcc gcc-c++ make binutilscompat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-commonglibc-devel
libaio libaio-devel libgcclibstdc++ libstdc++-devel unixODBC unixODBC-devel


2、创建用户和组

# groupaddoinstall
# groupadd dba
# useradd oracle-g oinstall -d /home/oracle
# usermod -G dbaoracle
# passwd oracle


3、修改内核参数

# vi/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、修改系统资源限制

# vi/etc/security/limits.conf #末尾添加如下
oracle   soft  nproc   2047
oracle   hard  nproc   16384
oracle   soft  nofile   1024
oracle   hard  nofile   65536
# vi/etc/pam.d/login
session    required    pam_namespace.so  #下面添加一条pam_limits.so
session    required    pam_limits.so
# vi/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


5、创建安装目录及设置权限

# mkdir /opt/oracle/app/
# mkdir /opt/oracle/oradata/
# chmod 755/opt/oracle/
# chmod 775/opt/oracle/app/
# chown oracle.oinstall -R /opt/oracle/


6、设置oracle环境变量(以oracle用户登录设置)

$ vi ~/.bash_profile
ORACLE_BASE=/opt/oracle/app
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
PATH=$PATH:$ORACLE_HOME/bin
ROACLE_SID=orcl
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin 
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib 
LANG="zh_CN.UTF-8"                
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH LANG

$ source .bash_profile  #立即生效


7、安装oracle

下载并解压:(下载去oracle官网下载即可,下载步骤略)

#cd /opt/soft
# unzip linux.x64_11gR2_database_1of2.zip
# unzip media/linux.x64_11gR2_database_2of2.zip
# xhost +   #使所有用户都能访问图形桌面
# su - oracle
# cd /opt/soft/databases
# ./runInstaller








 配置安全更新页面,点击下一步  (注意:此处安装界面出来的时候,有的可能是乱码【出现各种方格子】,主要和语言环境,字体等有关系,可以安装中易宋体18030,可以解决乱码问题;或者直接设置LANG为英文环境,在英文下安装也可)

wKiom1TaMtSQn6HDAAJDzcJXVh8725.jpg

 

确认不提供电子邮件地址,点击是进行下一步

wKiom1TaMwrDOa0GAAKru9kBFfA523.jpg









 

选择创建和配置数据库,点击下一步

wKioL1TaM_6yKF3mAAHPw1mIzgM168.jpg

 

选择服务器类,点击下一步

 

wKiom1TaMwrykZ2aAAInu1QiWzY908.jpg

 

选择单实例数据库安装,点击下一步

wKioL1TaM_-ibXwEAAHNC8f0sms769.jpg

 

选择高级安装,点击下一步

wKiom1TaMwvQ6B2CAAIECRUFAWo556.jpg

 

默认产品语言‘简体中文’‘英文’

wKioL1TaM_-zlUnEAAJjBJ1pjH8442.jpg

企业版

wKiom1TaMwvDY2zDAAKctX_ZumM766.jpg

 

指定安装位置

wKioL1TaM_-CTzGiAAJGBMBWfKg698.jpg

 

wKiom1TaMwvDqVk0AAJNeKUxZp4578.jpg


 


wKiom1TaM-aTmp9iAAIPodC_-uU264.jpg





 

输入全局数据库名和 SID

wKioL1TaNNrg4dhPAAJic0Q_-hs268.jpg

 

字符集选择‘ZHS16GBK

wKioL1TaNNqSS4v0AAKmTjwD8b0542.jpg

 

wKiom1TaM-bQPf55AALMOQTYT_E197.jpg

 

wKioL1TaNNvwnv18AALyd6gGG6o202.jpg

 



wKiom1TaNJyiaX89AAJUvwHpJqU413.jpg


wKioL1TaNZDBmY_XAALfUyhtqAE240.jpg



wKiom1TaNJzDzEx6AAJxwtrsvqw611.jpg







 


 


 

执行先决条件检查页面,点击修补并再次检查

失败内容仅包含操作系统内核参数,点击‘修补并再次检查’


(注意:此处如果你有缺少包未通知,你只需要安装相应的包32位和64位都要安装,安装完成后,再次检查还是不能通过,那么你可以直接全部忽略,直接下一步)

wKioL1TaNZGArmHAAANesFAKkzA311.jpg

 

执行修复脚本,点击确定进行下一步

root 用户执行以下命令:

1cd /tmp/CVU_11.2.0.1.0_oracle/

2./runfixup.sh

 

wKiom1TaNJ2RBm5MAANiZPphzw0155.jpg

 

安装概要页面,点击完成开始安装


wKiom1TaNQ6gskTDAAMLYKvr_nA831.jpg

wKiom1TaNQ6j93CEAALk_nixkFI557.jpg





 

安装产品

wKioL1TaNgPj50AHAAMgDphJ4iw982.jpg

 

数据库创建完成,点击确定进行下一步

wKiom1TaNQ_Be3TRAAKlAUTkxzY540.jpg

 

执行配置脚本,点击确定进行下一步

root 用户执行以下命令:

1)cd /opt/app/oraInventory/
2)./orainstRoot.sh
3)cd /opt/app/oracle/product/11.2.0/db_1/
4)./root.sh(当出现 Enter the full pathname of the local bin directory:[/usr/local/bin]: 时点击回车键)

 

wKioL1TaNgPDEhJAAAGD_f6DCGs507.jpg

 

wKiom1TaNQ-ztUohAAHfZiKKG48264.jpg



oracle常用命令


	# su – oracle
 
	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          #查看视图信息
 
	lsnrctl start                               #开启远程监听端口






10、oracle用户和system用户区别

1>.存储数据重要性不同

存放数据字典的基表和视图,由数据库自己维护,任何用户都不能手动更改,sys用户拥有dba、sysdba、sysoper等角色或权限,是oracle权限最高用户。

而system用户只存放一些一级的内部数据,如oracle的一些特性或工具的管理信息。用于数据库管理,System用户拥有普通dba角色权限。

2>.

用户具有sysdba或sysoper系统权限,登录em也只能用这两个身份,不能用normal。

system用户只能用normal身份登录em,除非你对它授予了sysdba的系统权限或syspoer系统权限。

#sysdba和sysoper两个系统权限区别

normal是普通用户

sysdba拥有最高的系统权限,登录后是sys

sysoper主要用来启动、关闭数据库,sysoper登录后用户是public

和sysdba的区别

先了解下oracle服务的创建过程:–> –> 创建数据库

启动过程:实例启动 –> 装载数据库 –> 打开数据库

sysdba是管理oracle实例的,它的存在不依赖于整个数据库完全启动,只要实例启动了,它就已经存在,以sysdba身份登录,装载数据库,打开数据库。只有数据库打开了,或者整个数据库完全启动后,dba角色才有存在的基础。