客快物流大数据项目(二十二):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)