说明
在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、安装依赖包
1
2
|
# 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、创建用户和组
1
2
3
4
5
|
# groupaddoinstall
# groupadd dba
# useradd oracle-g oinstall -d /home/oracle
# usermod -G dbaoracle
# passwd oracle
|
3、修改内核参数
1
2
3
4
5
6
7
8
9
10
11
12
|
# 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、修改系统资源限制
1
2
3
4
5
|
# vi/etc/security/limits.conf #末尾添加如下
oracle soft nproc
2047
oracle hard nproc
16384
oracle soft nofile
1024
oracle hard nofile
65536
|
1
2
3
|
# vi/etc/pam.d/login
session required pam_namespace.so
#下面添加一条pam_limits.so
session required pam_limits.so
|
1
2
3
4
5
6
7
8
9
|
# 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、创建安装目录及设置权限
1
2
3
4
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用户登录设置)
1
2
3
4
5
6
7
8
9
10
11
|
$ 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官网下载即可,下载步骤略)
1
2
3
4
5
6
7
|
#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为英文环境,在英文下安装也可)
确认不提供电子邮件地址,点击是进行下一步
选择创建和配置数据库,点击下一步
选择服务器类,点击下一步
选择单实例数据库安装,点击下一步
选择高级安装,点击下一步
默认产品语言‘简体中文’‘英文’
企业版
指定安装位置
输入全局数据库名和 SID
字符集选择‘ZHS16GBK’
执行先决条件检查页面,点击修补并再次检查
失败内容仅包含操作系统内核参数,点击‘修补并再次检查’。
(注意:此处如果你有缺少包未通知,你只需要安装相应的包32位和64位都要安装,安装完成后,再次检查还是不能通过,那么你可以直接全部忽略,直接下一步)
执行修复脚本,点击确定进行下一步
以 root 用户执行以下命令:
1)cd /tmp/CVU_11.2.0.1.0_oracle/
2)./runfixup.sh
安装概要页面,点击完成开始安装
安装产品
数据库创建完成,点击确定进行下一步
执行配置脚本,点击确定进行下一步
以 root 用户执行以下命令:
1
2
3
4
|
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
]: 时点击回车键)
|
oracle常用命令
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# 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角色才有存在的基础。
本文转自pizibaidu 51CTO博客,原文链接:http://blog.51cto.com/pizibaidu/1613521,如需转载请自行联系原作者