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

相关文章

Spring配置扩展之JavaConfig的使用小结

《Spring配置扩展之JavaConfig的使用小结》JavaConfig是Spring框架中基于纯Java代码的配置方式,用于替代传统的XML配置,通过注解(如@Bean)定义Spring容器的组... 目录JavaConfig 的概念什么是JavaConfig?为什么使用 JavaConfig?Jav

Spring Boot Interceptor的原理、配置、顺序控制及与Filter的关键区别对比分析

《SpringBootInterceptor的原理、配置、顺序控制及与Filter的关键区别对比分析》本文主要介绍了SpringBoot中的拦截器(Interceptor)及其与过滤器(Filt... 目录前言一、核心功能二、拦截器的实现2.1 定义自定义拦截器2.2 注册拦截器三、多拦截器的执行顺序四、过

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

springboot的controller中如何获取applicatim.yml的配置值

《springboot的controller中如何获取applicatim.yml的配置值》本文介绍了在SpringBoot的Controller中获取application.yml配置值的四种方式,... 目录1. 使用@Value注解(最常用)application.yml 配置Controller 中

springboot中配置logback-spring.xml的方法

《springboot中配置logback-spring.xml的方法》文章介绍了如何在SpringBoot项目中配置logback-spring.xml文件来进行日志管理,包括如何定义日志输出方式、... 目录一、在src/main/resources目录下,也就是在classpath路径下创建logba

C++多线程开发环境配置方法

《C++多线程开发环境配置方法》文章详细介绍了如何在Windows上安装MinGW-w64和VSCode,并配置环境变量和编译任务,使用VSCode创建一个C++多线程测试项目,并通过配置tasks.... 目录下载安装 MinGW-w64下载安装VS code创建测试项目配置编译任务创建 tasks.js

Nginx概念、架构、配置与虚拟主机实战操作指南

《Nginx概念、架构、配置与虚拟主机实战操作指南》Nginx是一个高性能的HTTP服务器、反向代理服务器、负载均衡器和IMAP/POP3/SMTP代理服务器,它支持高并发连接,资源占用低,功能全面且... 目录Nginx 深度解析:概念、架构、配置与虚拟主机实战一、Nginx 的概念二、Nginx 的特点

2025最新版Android Studio安装及组件配置教程(SDK、JDK、Gradle)

《2025最新版AndroidStudio安装及组件配置教程(SDK、JDK、Gradle)》:本文主要介绍2025最新版AndroidStudio安装及组件配置(SDK、JDK、Gradle... 目录原生 android 简介Android Studio必备组件一、Android Studio安装二、A

前端Visual Studio Code安装配置教程之下载、汉化、常用组件及基本操作

《前端VisualStudioCode安装配置教程之下载、汉化、常用组件及基本操作》VisualStudioCode是微软推出的一个强大的代码编辑器,功能强大,操作简单便捷,还有着良好的用户界面,... 目录一、Visual Studio Code下载二、汉化三、常用组件1、Auto Rename Tag2

通过DBeaver连接GaussDB数据库的实战案例

《通过DBeaver连接GaussDB数据库的实战案例》DBeaver是一个通用的数据库客户端,可以通过配置不同驱动连接各种不同的数据库,:本文主要介绍通过DBeaver连接GaussDB数据库的... 目录​一、前置条件​二、连接步骤​三、常见问题与解决方案​1. 驱动未找到​2. 连接超时​3. 权限不