时间:2021-07-01 10:21:17 帮助过:7人阅读
找到哪个没有安装,直接yum install XX,直到所有的都安装完成。注意,可能一个包安装了,再次执行检查,还是提示没有安装,那么就不需要管他们了,继续安装下面的。
rpm -q binutils compat-libstdc++ elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel
需要创建一个oralce用户,并创建两个组dba,oinstall,且将oralce添加至组oinstall和附加到dba组,具体命令如下:
/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/useradd -m -g oinstall -G dba oracle
passwd oracle
注意,这里的useradd –g: 新账户主组的名称或 ID,-G: 新账户的附加组列表,-m: 创建用户的主目录。
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oracle/db_1
mkdir -p /u01/app/oracle/oradate
mkdir -p /u01/app/oracle/install
mkdir -p /u01/app/oracle/oraInventory
chown -R oracle:oinstall /u01/app
chmod -R 775 /u01/app
直接执行下面的语句就行。
cat >> /etc/sysctl.conf <<EOF (从这里开始)
# Kernel paramaters required by Oracle 11g R2
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
EOF
/sbin/sysctl -p
cat >> /etc/security/limits.conf <<EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
EOF(到这里结束)
后面的都是一样!!!!!!!!!
cat >> /etc/pam.d/login <<EOF
session required /lib64/security/pam_limits.so
EOF
注意:
32位系统用:
session required /lib/security/pam_limits.so
64位系统用:
session required /lib64/security/pam_limits.so
如果不写对,在命令行模式下,是无法登陆系统的。
!!!!!!!!!!!!!!
cat >> /etc/profile <<EOF
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
EOF
cat >> /etc/csh.login <<EOF
# For Oracle Install
if ( $USER == "oracle" ) then
limit maxproc 16384
limit descriptors 65536
umask 022
end if
EOF
注意,这个步骤需要切换到oracle用户,
cd /home/oracle
cat >> /home/oracle/.bash_profile <<EOF
# For Oracle Install
TMP=/tmp;
export TMP;
TMPDIR=$TMP;
export TMPDIR;
ORACLE_BASE=/u01/app/oracle;
export ORACLE_BASE;
ORACLE_HOME=$ORACLE_BASE/db_1;
export ORACLE_HOME;
ORACLE_SID=orcl;
export ORACLE_SID;
ORACLE_TERM=xterm;
export ORACLE_TERM;
PATH=/usr/sbin:$PATH;
export PATH;
PATH=$ORACLE_HOME/bin:$PATH;
export PATH;
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
export LD_LIBRARY_PATH;
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;
export CLASSPATH;
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
EOF
注意一下,当所有系统变量和环境变量配置好之后,要cat一下看看是不是都增加或者修改成功!!!!!!!
================== 华丽的分割线 ==================
============== 准备工作完成,开始安装 ===============
================== 华丽的分割线 ==================
先将数据库文件放入到/u01/app/oracle/install中,然后用解压软件解压,
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
《解压好之后,先在root用户下执行xhost + 使得能够任意进行连接。后su 到oracle用户下,执行export LANG=en后, 再进入到/u01/app/oracle/install/database下执行 ./runInstaller进行安装》
需要进入到vnc界面才能进行安装(原因未知,虚拟机上直接执行一直报错,报错为:检查监视器: 监视器配置至少必须显示 256 种颜色
>>> 无法使用命令 /usr/bin/xdpyinfo 自动检查显示器颜色。请检查是否设置了 DISPLAY 变量。 未通过<<<<-网上百度方法,是root 用户下执行xhost + 然后进入oracle用户执行./runInstaller就可以,但是我在虚拟机上执行后不行,最后在vnc上执行xhost + 发现执行通过,并能正常安装)--------自己补充的说明
进入到 datebase文件夹,
./runInstaller
注意,这里,需要用桌面环境,如果你的机器没有安装桌面环境,需要安装,然后再桌面环境里执行./runInstaller ,安装桌面环境命令如下:
yum groupinstall "Desktop" "Desktop Platform" "Desktop Platform Development" "Fonts" "General Purpose Desktop" "Graphical Administration Tools" "Graphics Creation Tools" "Input Methods" "X Window System" "Chinese Support [zh]" "Internet Browser"
安装完成桌面环境,在桌面环境内执行./runInstaller后,发现弹出来的东西中文乱码,在命令行敲入:export LANG=en,然后再安装。
(1)去除图中这个钩,然后点击下一步。
(2)点击“yes”。
(3)这里选择只安装软件,并下一步。
(4)选择单数据库安装,并下一步。
(5)选择“简体中文”,并下一步。
(6)选择企业版,并下一步。
(7)配置Oracle Base目录和Softwore Location目录,注意,这里的Oracle Base目录要和前面设置的环境变量一致,下面的Softwore Location目录要和前面设置的环境变量
一致。
(8)选择目录,这个目录之间建立过。
(9)直接点击下一步。
(10)接下来会到达检查依赖的步骤,他会提示很多依赖有问题,但是其实没关系,你已经安装好了,直接点击右上角的“忽略全部”即可,然后下一步。
(11)点击“完成”。然后就会开始安装,这可能需要等一会。
有可能还未执行到94%的时候,在84%的时候就卡住,那么应该是内存不够的原因,进入虚拟机修改一下内存大小为3g生效之后,会快速安装到94%(具体如果半天不动可以依据提示进行百度)
(12)当安装到94%的时候,会弹出一个小框,让你用root用户执行以下脚本。执行完了之后,点击OK。
(13)执行脚本:/u01/app/oraInventory/orainstRoot.sh
(14)执行脚本:/u01/app/oracle/db_1/root.sh
(15)这样就安装完成了,点击“关闭”,结束安装。
(16)然后,oracle就安装完毕了。别高兴太早,后面还有其他的。
如果一开始的系统变量和环境变量没有配置好,而oracle侥幸安装成功了,那么这里的netca命令是不会生效的,它会出现提示,.bash:netca:command not found ,这时候需要回过头看看这些变量设置好了没有,然后重新授权,重新安装oracle,发现一切都很顺利,并且netca命令生效!!!!!!
(1)在终端中使用netca命令启动创建监听器。
(2)选择“监听器配置”,并下一步。
(3)选择“增加”,并执行下一步。
(4)输入监听的名称(默认就行),并点击下一步。
(5)直接下一步。
(6)使用默认的端口号:1521,直接下一步。
注意:在这个地方点击下一步的时候没有马上到下一步的时候,可能就会出现提示说1521端口被占用,那么这时候你需要看看你的地址是不是设置的静态ip,如果是动态的,你不知道具体多少,用ifconfig查看一下,然后vim /etc/hosts,将里面的关于主机名和ip的换成你现在的动态ip,然后继续点击下一步,就可以进入到下一步了
(7)不需要配置其他监听器了,直接下一步。
(8)监听配置完成,下一步。
(9)点击“完成”,结束监听器的配置。
(1)在终端中使用dbca命令启动创建数据库实例。
(2)点击“下一步”开始配置。
(3)选择“创建数据库”,并点击下一步。
(4)直接点击下一步。
(5)(这个地方你可以查看一下你配置的环境变量/home/oracle/.bash_profile里面的ORACLE_SID)是多少填写实例名,这里需要与之前配置的环境变量中的保持一致,然后点击“下一步”。
(6)这个地方直接点击“下一步”。
(7)接下来设置所有用户的密码,建议全部设置一样就行,我设置的就是123456。生产环境可不建议这样设置。
(8)跟我说,密码太简单了,是否要继续,当然是继续拉。
(9)这两个地方直接选择下一步。
(10)选择简单的文法,并下一步。
(11)设置编码格式为UTF-8。
(12)直接点击“下一步”。
(13)选择“创建数据库”,并点击下一步。
(14)在弹出框里点击OK。
(15)然后就开始创建数据库实例了,这个过程需要等一会。(这个地方要耐心等待,因为需要一段时间)
(16)创建完成后弹了一个说明,直接退出即可。
(17)至此,安装步骤结束,接下来开始进行各种配置了。
启动数据库实例,分为两步:第一步,启动监听;第二步,启动数据库实例。
su - oracle --“切换到oracle用户”
lsnrctl start --“打开监听”
sqlplus /nolog --“进入到sqlplus”
conn /as sysdba --“连接到sysdba”
startup --“启动数据库实例”
shutdown immediate --“关闭数据库实例”
exit --“退出sqlplus”
lsnrctl stop --“关闭监听”
上面的命令很重要!!!!!!!!!
还有一种方法,不需要登陆sqlplus都ok
先启动监听 lsnrctl start
后启动实例 dbstart
使用dbstart命令启动数据库比较方便,但是在linux上安装好oracle之后,第一次使用dbstart命令可能会报如下错误:
[oracle@localhost ~]$ dbstart
ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener
Usage: /u01/app/oracle/db_1/bin/dbstart ORACLE_HOME
错误原因
dbstart和dbshut脚本文件中ORACLE_HOME_LISTNER的设置有问题
解决方法(注意这两个文件的位置,在你安装的oracle子目录里面,我的是在/u01/app/oracle/db_1/bin下面)
分别打开两个文件找到:ORACLE_HOME_LISTNER=$1,修改为
ORACLE_HOME_LISTNER=$ORACLE_HOME,命令如下:
[oracle@oracle11g ~]$ vi $ORACLE_HOME/bin/dbstart
[oracle@oracle11g ~]$ vi $ORACLE_HOME/bin/dbshut
修改后保存退出,问题解决,此时再运行dbstart,已经不报错了,但是没有任何反应,ps一下进程,没有oracle的进程,说明oracle实例没有正常启动。
此时的原因是在/etc/oratab的设置问题,(注意这里的是在cd /下面的/etc/oratab里面设置)我们cat一下,发现
orcl:/u01/app/oracle/db_1:N
最后设置的是"N"(我的环境中只菜单有一个实例,因此只有一行配置语句),我们需要把“N”修改为“Y”。
(Root用户下)在/etc/rc.d/rc.local中加入如下语句即可实现同系统启动实例:
su - oracle -c "lsnrctl start"
su - oracle -c "dbstart"
安装完了,怎么知道自己安装的有没有问题呢?当然需要测试一下啦。
1、重启机器,然后oracle是会自动启动的。
2、输入:sqlplus /nolog 连上oralce。
3、切换到 dba:conn /as sysdba。
4、执行:select * from fwb;
5、如果报找不到表,则代表正常。(因为我们本来就没有这个表。)
[oracle@localhost ~]$ sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on Thu Dec 22 17:59:04 2016
Copyright (c) 1982, 2009, Oracle. All rights reserved.
SQL> conn /as sysdba
Connected.
SQL>
SQL> select * from fwb;
select * from fwb
*
ERROR at line 1:
ORA-00942: table or view does not exist
到这里整个oracle的安装就完毕了,如果有问题可以一起交流。
linux 环境下安装oracle11g方法及安装过程中遇上的问题解决方法
标签:bottom 一个 开机 core unixodbc unix 系统变量 browser xdp