客快物流大数据项目(二十二):Docker环境中安装软件
目录
11、配置Oracle11gR2的静默监听服务
Docker环境中安装软件
一、安装JDK
操作步骤 |
说明 |
1 |
进入JDK所在目录 |
cd /export/softwares/ |
|
2 |
解压JDK |
tar -zxf jdk-8u221-linux-x64.tar.gz -C /usr/java/ |
|
3 |
创建JDK软连接 |
ln -s /usr/java/jdk1.8.0_221 /usr/java/jdk |
|
4 |
配置JDK权限 |
chown root:root -R /usr/java/jdk1.8.0_221 chmod 755 -R /usr/java/jdk1.8.0_221 |
|
5 |
查看安装后的目录 |
ll /usr/java/ |
|
6 |
配置JDK到环境变量 |
vim /etc/profile |
|
export JAVA_HOME=/usr/java/jdk export PATH=.:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH |
|
7 |
重新加载环境变量 |
source /etc/profile |
|
验证JDK |
|
java -version |
|
二、安装Oracle11g
1、安装pdksh
可以使用yum在线安装,如果无法下载时可以直接使用已经下载好的rpm包。
cd /export/softwares |
yum localinstall oracle/db/pdksh-5.2.14-37.el5_8.1.x86_64.rpm |
2、安装Oracle依赖
yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel |
3、检查Oracle依赖是否完整
rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel | grep "not installed" |
如果命令执行完成没有任何响应,则表示依赖包都已经安装了,如果有输出时表示缺少一些包,使用yum install -y 输出的软件包1 输出的软件包2 ...方式安装即可。 |
4、新增Oracle相关的用户和组
操作步骤 |
说明 |
1 |
新增oinstall用户组,安装oracle的用户组 |
groupadd oinstall |
|
2 |
新增dba用户组 |
groupadd dba |
|
3 |
新增oracle用户 |
useradd -g oinstall -G dba oracle -d /home/oracle |
|
4 |
查看oracle用户 |
id oracle |
|
5 |
设置oracle用户密码(我设置的密码为oracle) |
passwd oracle |
|
5、配置Kernel参数
操作步骤 |
说明 |
1 |
配置安装Oracle时必须满足的kernel参数 |
vim /etc/sysctl.conf |
|
新增 |
|
fs.aio-max-nr=1048576 fs.file-max=6815744 kernel.shmall=2097152 kernel.shmmni=4096 kernel.shmmax = 2147483648 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 |
|
|
|
虚拟机内存为4G,设置kernel.shemax=2G(单位为字节,服务器内存的一半) |
|
2 |
使修改kernel操作生效 |
sysctl -p |
|
6、配置Oracle用户的系统资源
操作步骤 |
说明 |
1 |
配置oracle用户的句柄数和线程数 |
vim /etc/security/limits.conf |
|
新增: |
|
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 |
|
|
|
2 |
配置oracle用户登录规则 |
vim /etc/pam.d/login |
|
新增: |
|
session required /lib64/security/pam_limits.so session required pam_limits.so |
|
3 |
配置oracle用户ksh |
vim /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 |
|
7、创建Oracle所需的目录
mkdir -p /u01/app/oracle/product/11.2.0 mkdir /u01/app/oracle/oradata mkdir /u01/app/oracle/inventory mkdir /u01/app/oracle/fast_recovery_area chown -R oracle:oinstall /u01/app/oracle chmod -R 775 /u01/app/oracle chown -R oracle:oinstall /u01/app/oracle/inventory |
|
8、配置Oracle用户的环境变量
设置~/.bash_profile的oracle用户权限(使用root用户操作) |
chown -R oracle:oinstall ~/.bash_profile |
|
注意:先切换到oracle用户的目录下再操作(使用oracle用户操作) |
su oracle vim ~/.bash_profile |
新增: |
umask 022 export ORACLE_HOSTNAME=server01 export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/ export ORACLE_SID=orcl export PATH=.:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATH export LC_ALL="en_US" export LANG="en_US" export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK" export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS" |
|
重新加载环境变量:source ~/.bash_profile |
9、解压Oracle11gR2
注意:在root用户下操作
操作步骤 |
说明 |
1 |
解压 |
cd /export/softwares/oracle/db/11gR2/ |
|
|
|
unzip linux.x64_11gR2_database_1of2.zip -d /opt/oracle/ unzip linux.x64_11gR2_database_2of2.zip -d /opt/oracle/ cd /opt/oracle/ ll . |
|
|
|
2 |
配置Oracle11g的安装脚本 |
cp ./database/response/* ./etc/ |
|
|
|
vim ./etc/db_install.rsp |
|
编辑配置项如下: |
|
oracle.install.option=INSTALL_DB_SWONLY ORACLE_HOSTNAME=server01 UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/u01/app/oracle/inventory SELECTED_LANGUAGES=en,zh_CN ORACLE_HOME=/u01/app/oracle/product/11.2.0 ORACLE_BASE=/u01/app/oracle oracle.install.db.InstallEdition=EE oracle.install.db.isCustomInstall=true oracle.install.db.DBA_GROUP=dba oracle.install.db.OPER_GROUP=dba DECLINE_SECURITY_UPDATES=true |
10、安装Oracle11gR2
注意:需要换到oracle用户再操作
操作步骤 |
说明 |
1 |
su oracle |
cd /opt/oracle/ |
|
|
|
2 |
运行安装程序 |
./database/runInstaller -silent -ignorePrereq -responseFile /opt/oracle/etc/db_install.rsp |
|
|
|
一定要注意,运行安装程序命令中的-responseFile参数必须为绝对路径。 |
|
3 |
安装进度监控 |
从/u01/app/oracle/inventory/logs/installActions2020-04-21_07-03-35AM.log中来查看Oracle11gR2的安装进度。 |
|
|
|
4 |
安装成功会显示的内容 |
|
|
5 |
安装成功后会提示下一步操作 |
|
|
6 |
Oracle要求使用root用户来执行这两个脚本 |
切换回root用户(输入root的密码) |
|
su |
|
7 |
使用root用户执行orainstRoot.sh脚本 |
sh /u01/app/oracle/inventory/orainstRoot.sh |
|
|
|
8 |
使用root用户执行root.sh脚本 |
sh /u01/app/oracle/product/11.2.0/root.sh |
|
|
|
9 |
提示检查文件 |
cat /u01/app/oracle/product/11.2.0/install/root_node1.itcast.cn_2020-04-21_07-30-40.log |
|
|
11、配置Oracle11gR2的静默监听服务
su - oracle |
cd ~ |
netca /silent /responsefile /opt/oracle/etc/netca.rsp |
|
如果提示找不到netca命令时执行:source .bash_profile |
netstat -tnulp | grep 1521 |
|
12、静默创建数据库
操作步骤 |
说明 |
1 |
使用oracle查看dbca.rsp的权限信息 |
ll /opt/oracle/etc/dbca.rsp |
|
|
|
2 |
使用root用户设置dbca.rsp的权限 |
su |
|
chown -R oracle:oinstall /opt/oracle/etc/dbca.rsp |
|
|
|
3 |
使用oracle用户编辑数据库配置 |
vim /opt/oracle/etc/dbca.rsp |
|
设置为如下:(前面有#的配置项,需要将#删除) |
|
GDBNAME = "orcl" SID = "orcl" SYSPASSWORD = "oracle" SYSTEMPASSWORD = "oracle" SYSMANPASSWORD = "oracle" DBSNMPPASSWORD = "oracle" DATAFILEDESTINATION = /u01/app/oracle/oradata CHARACTERSET = "AL32UTF8" TOTALMEMORY = "1536" |
|
4 |
运行静默建库(若提示:bash: dbca: command not found,重新加载source .bash_profile) |
dbca -silent -responseFile /opt/oracle/etc/dbca.rsp |
|
|
|
5 |
检查静默建库的log中是否有错误 |
cat /u01/app/oracle/cfgtoollogs/dbca/orcl/orcl.log |
|
|
|
6 |
查看Oracle11gR2的进程 |
ps -ef | grep ora_ |
|
|
|
7 |
查看Oracle11gR2的监听服务 |
lsnrctl status |
|
|
13、登录Oracle11gR2数据库
1)使用SQLPLUS登录Oracle11gR2数据库
su - oracle |
which sqlplus |
sqlplus "/as sysdba" |
startup |
切换到oracle /bin 目录:cd $ORACLE_HOME/bin |
启动监听:lsnrctl start |
SQL> select instance_name AS "SID",host_name,version from v$instance; |
|
2)使用DBEaver登录Oracle11gR2数据库
属性名 |
属性值 |
主机地址 |
192.168.88.10 |
端口号 |
1521 |
数据库实例名称 |
ORCL |
数据库实例类型 |
SID |
用户名 |
sys |
角色 |
SYSDBA |
密码 |
oracle |
JDBC访问URL |
jdbc:oracle:thin:@//192.168.88.10:1521:ORCL |
JDBC驱动名称 |
使用OracleDataSource连接池,无需配置Driver |
|
14、运行Oracle11gR2所遇到的问题
1)ORA-01102异常
- 异常现象
在sqlplus中执行startup的时候提示ORA-01102: cannot mount database in EXCLUSIVE mode错误。 |
|
- 异常解决
切换到root用户执行: |
cd /u01/app/oracle/product/11.2.0/dbs |
fuser -u lkORCL |
|
fuser -k lkORCL |
|
startup |
|
2)ORA-00845异常
- 异常现象
在sqlplus中执行startup的时候提示ORA-00845: MEMORY_TARGET not supported on this system错误。 |
|
- 异常解决
切换到root用户执行:mount -t tmpfs shmfs -o size=4g /dev/shm |
|
- 📢博客主页:https://lansonli.blog.csdn.net
- 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
- 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
- 📢大数据系列文章会每天更新,停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨
文章来源: lansonli.blog.csdn.net,作者:Lansonli,版权归原作者所有,如需转载,请联系作者。
原文链接:lansonli.blog.csdn.net/article/details/122741234
- 点赞
- 收藏
- 关注作者
评论(0)