大家好,又见面了,我是全栈君。
说明
在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,如需转载请自行联系原作者
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/107948.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...