最近工做中用到了
Oracle
做为Intel
测试的数据库,在装Oracle Linux
和Oracle Database 11g R2
折腾了好久,这篇文章就这两点对你们分享一些我安装过程当中遇到的问题和注意点,RAC
暂时还未配置,稍后找时间补上 ~~~html如今网上找一篇好的文章好难,每每要在一个话题或技术上找多方资源东拼西凑,互相借鉴才能达成目的,缘由就是不少细节部分描述不清或者忽略,这样每每会给读者带来负效应,本文旨为读者呈现每一步的细节操做和异常处理,若有不足,请指正,谢谢!linux
友情提醒: 本文参照
link
较多,请细心而且耐心地进行每一步操做c++
参考列表:bash
如下操做步骤基本是按上面两条
link
走的,有一些地方不同或者是不必的我会在下面详细讲解,我装的时候以link1
为主线,而后参照link2
的word
文档进行,没有特殊标记的通常都是根据link1
操做,你们也能够这样操做,能够少遇一些坑,节省一些时间~~~dom
注意点:
Base server
这一步很关键
勾选Oracle Linux Server
, Resilient Storage
和 Scalable Filesystem Support
(参照link2
)
勾选Customize Now
,这一步依然很是关键,只有勾选了才能够装一些Oracle Linux
须要的套件
须要手动添加安装的套件(系统默认勾选的不要删掉,这边的操做只添加勾选):
Base System
:Compatibility libraries
、Legacy UNIX compatibility
Servers
: System administration tools
Desktops
: Desktop
、Desktop Platform
、Fonts
、General Purpose Desktop
、Graphical Administration Tools
、Input Methods
、X Window System
Development
: Additional Development
、Development Tools
Appilication
: Internet Browser
安装应该是1390
个包,装好直接reboot
这时候建立普通用户的时候,千万不要建立oracle
用户,不然以后会有不少麻烦
下面讲的主要是和两个文档不一样的地方(依然以link1
为主线):
selinux
须要dsiable
/etc/sysctl.conf
参照link2
,kernel.shmmax = 536870912
(这行参照link2
)/etc/security/limits.conf
oracle soft nproc 16384 oracle hard nproc 16384 oracle soft nofile 4096 oracle hard nofile 65536 oracle soft stack 10240
oracle linux 6.5
光盘下载包(我是经过yum
安装,没有安装的大部分都是系统已经安装了,少部分是不必安装)须要安装:
ksh
libaio-devel.i686
libaio-devel.x86_64
libaio.i686
libstdc++.i686
libstdc++-4.4.7-18.el6.i686
compat-libstdc++-33.i686
不须要安装:
numactl-devel-2*x86_64*
因为我本地的是
libstdc++-4.4.7-4.el6.x86_64
,而安装的是libstdc++-4.4.7-18.el6.i686
,版本不匹配会形成yum
报错,而这个库做为众多库的依赖还不能删除,因此只能强行升级:yum install libstdc++-4.4.7-18.el6.i686
,而后再安装i686
文件
这一步参照: Automating Database Startup and Shutdown on Linux
附上脚本和~/.bash_profile
:start_all.sh
:
#!/bin/bash . /home/oracle/scripts/setEnv.sh export ORAENV_ASK=NO . oraenv export ORAENV_ASK=YES dbstart $ORACLE_HOME
stop_all.sh
:
#!/bin/bash . /home/oracle/scripts/setEnv.sh export ORAENV_ASK=NO . oraenv export ORAENV_ASK=YES dbshut $ORACLE_HOME
setenv.sh
:
# Oracle Settings export TMP=/tmp export TMPDIR=$TMP export ORACLE_HOSTNAME=tonydb.localdomain export ORACLE_UNQNAME=sampledb export ORACLE_BASE=/home/oracle/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 export ORACLE_SID=sampledb export PATH=/usr/sbin:/usr/local/bin:$PATH export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
~/.bash_profile
最后一行追加:
. /home/oracle/scripts/setenv.sh
FTP
并上传zip
文件(这一步有需求就执行,我是经过windows
传输到linux
上)安装包在页面最上方
Resource Link
的第二个link
,有两个zip
包,都是须要的,这就是Oracle Database 11g R2
的包,下面就开始安装数据库了,离成功也就不远了
参照: Oracle Database 11g Release 2 Installation on RHEL/CentOS 6.x/5.x/4.x,以这个link
的步骤为主,link1
和link2
为辅
next button
闪退的现象,进入preference
里面调节屏幕分辨率便可check
时候报错,若是你在上面安装了那么就ignore
吧,由于这些包都安装了,只不过版本比它check
的高:libaio-0.3.105 compat-libstdc++-33-3.2.3 libaio-devel-0.3.105 libgcc-3.4.6 libstdc++-3.4.6 unixODBC-2.2.11 unixODBC-2.2.11 unixODBC-devel-2.2.11 unixODBC-devel-2.2.11 pdksh-5.2.14
参照: Oracle Listener
最后
test
不成功也不要紧,先保存设置进行下一步,这边把lsnrcetl
起起来就能够了,先不要进入oracle
命令行,须要等下一步建立了数据库再进行startup
等操做
问题1:使用
netmgr
命令进入页面更改配置最后保存的时候报错Save Network Configuration entry failed
解决:点击detail
可知具体错误缘由,能够看到报错信息最后是permission denied
,这是由于第一次你是用的root
用户登陆netmgr
,因此形成tnsnames.ora
权限是root
用户权限,因此你更改配置信息失败,因此chown oracle:oinstall tnsnames.ora
搞定
问题2:
lsnrctl start
失败报错permission denied
解决:问题和上面同样,只不过此次是listener.ora
的权限不对,因此向上面的作法再作一次,这一点能够看出拍错很重要,要多看detail
信息
dbca
进入建立向导,填写正确的sid
,sid
不用填ORCL
,就用同步生成的就好,不一样的数据库能够拥有不一样的sid
,按照默认的配置不断地next
就好
安装后的默认数据库为orcl,如需建立新的数据库
使用辅助工具(Linux UI mode)
root@oracledb: xhost local:oracledb
root@oracledb: su - oracle
oracle@oracledb: dbca
使用em管理WebUI
建立表空间
使用sqlplus
su - oracle (Windows下此步骤省略)
sqlplus / as sysdba
create tablespace test_space datafile '/opt/oracle/oradata/test_data.dbf' size 500M
使用em管理WebUI
建立用户
使用sqlplus
su - oracle (Windows下此步骤省略)
sqlplus / as sysdba
create user test identified by test default tablespace test_space;
使用em管理WebUI
受权用户权限
使用sqlplus
su - oracle (Windows下此步骤省略)
sqlplus / as sysdba
grant connect, resource to test;
使用em管理WebUI
受权DBA权限(RMAN须要dba权限来运行)
使用sqlplus
su - oracle (Windows下此步骤省略)
sqlplus / as sysdba
grant sysdba to test;
使用em管理WebUI
切换用户
root@oracledb: su - oracle
启动监听
lsnrctl start
启动实例
su - oracle (Windows下此步骤省略)
sqlplus /nolog
conn /as sysdba
startup
关闭实例
su - oracle (Windows下此步骤省略)
sqlplus /nolog
conn /as sysdba
shutdown immediate
exit
关闭监听
lsnrctl stop
启动归档日志模式
sqlplus /as sysdba
shutdown immediate
startup mount
alter database archivelog
alter database open
关闭归档日志模式
sqlplus /as sysdba
shutdown immediate
startup mount
alter database noarchivelog
alter database open
做者: Tony
日期: 2017/06/26