Centos7之Oracle12c安装与远程连接配置

2024-02-14 12:36

本文主要是介绍Centos7之Oracle12c安装与远程连接配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Centos7之Oracle12c安装与远程连接配置

文章目录

  • Centos7之Oracle12c安装与远程连接配置
  • 1.Oracle官网
  • 2. Centos7中安装Oracle12c(12.2.0.1.0)
    • 2.1 Introduction (介绍)
    • 2.2 Prerequisites(先决条件)
    • 2.3 Installation Steps(安装步骤)
    • 2.4 Oracle Installer Screens(Oracle安装程序屏幕)
    • 2.5 Post Installation Tasks(安装后任务)
    • 2.6 Oracle Environment(Oracle环境变量)
    • 2.7 登录验证
    • 2.8 PL/SQL developer连接Oracle数据库
      • 2.8.1 配置Oracle监听
      • 2.8.2 使用Pl/SQL developer连接数据库服务器

1.Oracle官网

  1. 官网地址
  1. 官网文档地址:https://docs.oracle.com/en/database/oracle/oracle-database
  2. Oracle12c文档地址:https://docs.oracle.com/en/database/oracle/oracle-database/12.2/index.html

2. Centos7中安装Oracle12c(12.2.0.1.0)

2.1 Introduction (介绍)

本安装指南说明如何在Centos7中安装Oracle12c

Reference System:

[root@yuan ~]# hostnamectlStatic hostname: yuanIcon name: computer-laptopChassis: laptopMachine ID: 28ea7433e24341a892abab3fd175abc8Boot ID: 7f9eb0c180e14bd99d6db7b5ae6d1416Operating System: CentOS Linux 7 (Core)CPE OS Name: cpe:/o:centos:centos:7Kernel: Linux 3.10.0-957.10.1.el7.x86_64Architecture: x86-64

2.2 Prerequisites(先决条件)

  1. After a successful OS installation, verify the hostname and register it in your DNS. Alternatively add your hostname/IP to the /etc/hosts.

成功安装操作系统后,请验证主机名并将其注册到DNS中。或者将主机名/IP添加到/etc/hosts。

[root@yuan ~]# cat /etc/hostname
yuan
  1. Leave the SELinux in enforcing mode as well as the firewall enabled

使SELinux处于强制模式,并启用防火墙

[root@yuan ~]# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Max kernel policy version:      31
[root@yuan ~]# firewall-cmd --state
running
  1. Update the CentOS system with the latest packages

    使用最新的软件包更新CentOS系统

[root@yuan ~]# yum update -y
  1. 下载Oracle安装包

官网下载地址:https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

2.3 Installation Steps(安装步骤)

  1. Create required OS users and groups for Oracle Database.

    为Oracle数据库创建所需的操作系统用户和组

[root@yuan ~]# groupadd oinstall
[root@yuan ~]# groupadd dba
[root@yuan ~]# useradd -g oinstall -G dba oracle
[root@yuan ~]# passd oracle #回车后输入Oracle用户的密码,如myoracle
  1. Add the following kernel parameters to the */etc/sysctl.conf

    将以下内核参数添加到/etc/sysctl.conf文件中

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1987162112
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
  1. Check and apply the new values.(检查并应用新值)
[root@yuan ~]# sysctl -p
  1. Specify limits for oracle user in the /etc/security/limits.conf

    在/etc/security/limits.conf中指定Oracle用户的限制

[root@yuan ~]# vim /etc/security/limits.conf 然后在文件末尾添加如下代码oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
  1. 解压下载好的文件到/stage/目录下
[root@yuan ~]# yum install -y zip unzip # 最新版本已经内置安装了zip与unzip,这句可以不执行
# 解压
[root@yuan ~]# unzip linuxx64_12201_database.zip -d /stage/
  1. Modify permissions on /stage(修改stage的权限)
[root@yuan ~]# chown -R oracle:oinstall /stage/
  1. Create /u01 directory for Oracle software and /u02 for database files.

    为Oracle软件创建/u01目录,为数据库文件创建/u02目录。

[root@yuan ~]# mkdir /u01
[root@yuan ~]# mkdir /u02
[root@yuan ~]# chown -R oracle:oinstall /u01
[root@yuan ~]# chown -R oracle:oinstall /u02
[root@yuan ~]# chmod -R 775 /u01
[root@yuan ~]# chmod -R 775 /u02
[root@yuan ~]# chmod g+s /u01
[root@yuan ~]# chmod g+s /u02
  1. Install required packages(安装所需的包)
[root@yuan ~]# yum install -y binutils.x86_64 compat-libcap1.x86_64 gcc.x86_64 gcc-c++.x86_64 glibc.i686 glibc.x86_64 \
glibc-devel.i686 glibc-devel.x86_64 ksh compat-libstdc++-33 libaio.i686 libaio.x86_64 libaio-devel.i686 libaio-devel.x86_64 \
libgcc.i686 libgcc.x86_64 libstdc++.i686 libstdc++.x86_64 libstdc++-devel.i686 libstdc++-devel.x86_64 libXi.i686 libXi.x86_64 \
libXtst.i686 libXtst.x86_64 make.x86_64 sysstat.x86_64

2.4 Oracle Installer Screens(Oracle安装程序屏幕)

  1. 以“Oracle”用户身份登录并运行Oracle安装程序:
[oracle@yuan ~]$ /stage/database/runInstaller
Starting Oracle Universal Installer...
  1. Security Updates(配置安全更新)

​ 让你填写邮件信息的,直接点击下一步

  1. Installation Option(安装选项)

    创建和配置数据库©(默认选中的是此项)

  2. System Class(系统类)

    桌面类(D),默认此项即可

  3. Typical Installation(典型安装)

    On the Typical Install Configuration screen, specify the key features.

    Oracle base/u01/app/oracle
    Software location/u01/app/oracle/product/12.2.0/dbhome_1
    Database file location/u02
    Global database nameorcl
  4. Create Inventory(创建产品清单)

    Accept the default /u01/app/oraInventory and click Next.

  5. Prerequisite Checks(先决条件检查)

    The Installer automatically verifies all required OS packages and OS kernel settings.

  6. Summary(概要)

    Final chance to edit any installation features. Click Install.

  7. Execute Configuration Scripts(执行配置脚本)

  8. When a request window appears, login as root and execute two scripts:

    [root@yuan ~]# /u01/app/oraInventory/orainstRoot.sh
    Changing permissions of /u01/app/oraInventory.
    Adding read,write permissions for group.
    Removing read,write,execute permissions for world.
    Changing groupname of /u01/app/oraInventory to oinstall.
    The execution of the script is complete.
    
    [root@yuan ~]# /u01/app/oracle/product/12.2.0/dbhome_1/root.sh
    # 中途敲了两次回车
    Performing root user operation.
    The following environment variables are set as:ORACLE_OWNER= oracleORACLE_HOME=  /u01/app/oracle/product/12.1.0/dbhome_1
    Enter the full pathname of the local bin directory: [/usr/local/bin]: <PRESS ENTER>Copying dbhome to /usr/local/bin ...Copying oraenv to /usr/local/bin ...Copying coraenv to /usr/local/bin ...
    Creating /etc/oratab file...
    Entries will be added to the /etc/oratab file as needed by
    Database Configuration Assistant when a database is created
    Finished running generic part of root script.
    Now product-specific root actions will be performed.
    You can follow the installation in a separated window.
    
  9. Installation progress(安装进度)

    Another window opens to show you the installation progress. Do not close this window.

  10. Installation completed successfully

    The last screen inform that the installation is done and displays the Oracle Enterprise Manager URL.

    https://localhost:5500/em

    Click OK to close the Installer.

2.5 Post Installation Tasks(安装后任务)

  1. Login as root and verify the active zones

    以root用户登录并验证活动区域

    [root@yuan ~]# firewall-cmd --get-active-zones
    publicinterfaces: wlp2s0
    

    Open the related ports(打开相关端口)

    [root@yuan ~]# firewall-cmd --zone=public --add-port=1521/tcp --add-port=5500/tcp --add-port=5520/tcp --add-port=3938/tcp --permanent
    success
    
    [root@yuan ~]# firewall-cmd --reload
    success
    
    [root@yuan ~]# firewall-cmd --list-ports
    1521/tcp 5500/tcp 5520/tcp 3938/tcp
    [root@yuan ~]# 
    

2.6 Oracle Environment(Oracle环境变量)

Login as oracle user and add the following values to the /home/oracle/.bash_profile

#切换至Oracle用户
[root@yuan product]# su oracle 
#编辑/home/oracle/.bash_profile文件
[oracle@yuan product]$ vim /home/oracle/.bash_profile
#在文件末尾添加下面信息
TMPDIR=$TMP; export TMPDIR
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/lib64; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

Reload the bash_profile to apply the new settings:

[oracle@yuan ~]$ cd /home/oracle
[oracle@yuan ~]$ . .bash_profile

2.7 登录验证

[oracle@yuan ~]$ sqlplus / as sysdbaSQL*Plus: Release 12.2.0.1.0 Production on Fri Apr 26 23:09:29 2019Copyright (c) 1982, 2016, Oracle.  All rights reserved.???: 
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL>

查看实例状态

SQL> select status from v$instance;
STATUS
------------
OPEN

关闭数据库

SQL> shutdown immediate;

2.8 PL/SQL developer连接Oracle数据库

2.8.1 配置Oracle监听

如果不配监听:连接时会报:ora-12541:tns:无监听程序

  1. 查看监听状态
oracle@yuan ~]$ lsnrctl status#如果输出的倒数第二行有“The listener supports no service”则表示无监听,
#原因是:(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)中的
#HSOT=localhost,将其改为Oracle宿主机自身的IP地址即可,如下:
#(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.31.126)
  1. 修改监听信息
  • 使用netmgr命令启动Net Manager图形管理界面,在listener中将localhost改为对应的IP地址即可。
  • 如果是远程该的话,则使用vim编辑器修改,如下:
[oracle@yuan ~]$ vim /u01/app/oracle/product/12.2.0/dbhome_1/network/admin/listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/12.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)))(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.31.126)(PORT = 1521))#这里改为IP即可))ADR_BASE_LISTENER = /u01/app/oracle
  1. 重启监听
[oracle@yuan ~]$ lsnrctl stop
[oracle@yuan ~]$ lsnrctl start

2.8.2 使用Pl/SQL developer连接数据库服务器

这里采用的是不安装Oracle客户端的情况下连接Oracle数据库服务器

  1. 下载instantclient-basic-windows.x64-12.2.0.1.0.zip文件解压到指定位置,如D盘
  2. 解压后,在instantclient_12_2 文件夹下新建 NETWORK\ADMIN 两个文件夹
  3. 在ADMIN文件夹下新建tnsnames.ora文件,内容如下:
ORCL =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.31.126)(PORT = 1521))#数据库服务器IP配置)(CONNECT_DATA =(SERVICE_NAME = orcl)#sid))
  1. 配置环境变量
  • TNS_ADMIN配置,目的是打开pl/sql时自动识别要连接的DATABASE

在系统变量中新建TNS_ADMIN=D:\instantclient_12_2\NETWORK\ADMIN 环境变量

  • NLS_LANG配置,目的是解决pl/sql连接后数据显示乱码问题,即查询某个字段后中文显示成???的问题

在系统变量中新建NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK 环境变量

  1. pl/sql developer配置
  • 打开pl/sql developer找到preferences–>Oracle–>Connecttion
  • 将Oracle Home的内容添加为D:\instantclient_12_2
  • 将OCI Library 内容改为D:\instantclient_12_2\oci.dll
  1. 重启Pl/SQL developer,然后连接Oracle数据库即可

这篇关于Centos7之Oracle12c安装与远程连接配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/708508

相关文章

mybatis映射器配置小结

《mybatis映射器配置小结》本文详解MyBatis映射器配置,重点讲解字段映射的三种解决方案(别名、自动驼峰映射、resultMap),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录select中字段的映射问题使用SQL语句中的别名功能使用mapUnderscoreToCame

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

Java实现远程执行Shell指令

《Java实现远程执行Shell指令》文章介绍使用JSch在SpringBoot项目中实现远程Shell操作,涵盖环境配置、依赖引入及工具类编写,详解分号和双与号执行多指令的区别... 目录软硬件环境说明编写执行Shell指令的工具类总结jsch(Java Secure Channel)是SSH2的一个纯J

MySQL8 密码强度评估与配置详解

《MySQL8密码强度评估与配置详解》MySQL8默认启用密码强度插件,实施MEDIUM策略(长度8、含数字/字母/特殊字符),支持动态调整与配置文件设置,推荐使用STRONG策略并定期更新密码以提... 目录一、mysql 8 密码强度评估机制1.核心插件:validate_password2.密码策略级

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

QT Creator配置Kit的实现示例

《QTCreator配置Kit的实现示例》本文主要介绍了使用Qt5.12.12与VS2022时,因MSVC编译器版本不匹配及WindowsSDK缺失导致配置错误的问题解决,感兴趣的可以了解一下... 目录0、背景:qt5.12.12+vs2022一、症状:二、原因:(可以跳过,直奔后面的解决方法)三、解决方

SpringBoot路径映射配置的实现步骤

《SpringBoot路径映射配置的实现步骤》本文介绍了如何在SpringBoot项目中配置路径映射,使得除static目录外的资源可被访问,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一... 目录SpringBoot路径映射补:springboot 配置虚拟路径映射 @RequestMapp