Linux下的Oracle启动脚本及其开机自启动

yizhihongxing

在Linux下,Oracle启动脚本是通过init.d脚本实现的,通过配置开机自启动,可以在服务器启动时自动启动Oracle数据库。

编写Oracle启动脚本

  1. 在/etc/init.d/目录下创建名为oracle的脚本文件:

    sudo vi /etc/init.d/oracle

  2. 在文件中输入以下脚本:

    ```

    !/bin/bash

    oracle: Start Oracle listener and instances

    chkconfig: 345 99 10

    description: This script starts the Oracle listener and instances.

    Source function library.

    . /etc/rc.d/init.d/functions

    ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
    PATH=$PATH:$ORACLE_HOME/bin
    export ORACLE_HOME PATH

    case "$1" in
    start)
    echo -n "Starting Oracle listener: "
    lsnrctl start
    echo "OK"
    echo -n "Starting Oracle instances: "
    # Start the Oracle database instances
    dbstart $ORACLE_HOME
    echo "OK"
    ;;
    stop)
    echo -n "Stopping Oracle instances: "
    # Stop the Oracle database instances
    dbshut $ORACLE_HOME
    echo "OK"
    echo -n "Stopping Oracle listener: "
    lsnrctl stop
    echo "OK"
    ;;
    restart)
    $0 stop
    $0 start
    ;;
    *)
    echo "Usage: $0 {start|stop|restart}"
    exit 1
    ;;
    esac

    exit 0
    ```

    该脚本指定了Oracle_HOME路径,并定义了start、stop、restart三个命令,根据需要使用相应的命令即可启动、停止、重启Oracle服务。

配置开机自启动

  1. 将oracle脚本赋予可执行权限:

    sudo chmod +x /etc/init.d/oracle

  2. 添加启动项,在/etc/rc.d/rc.local文档倒数第二行加上如下命令:

    /etc/init.d/oracle start

以CentOS 7为例,使用systemctl实现Oracle自启动的命令如下:

sudo systemctl enable oracle

详细的实现方式:

  1. 在/etc/systemd/system目录下创建名称为oracle.service的文件:

    sudo vi /etc/systemd/system/oracle.service

  2. 位于文件中输入以下值:

    ```
    [Unit]
    Description=Oracle Database

    [Service]
    Type=forking
    LimitMEMLOCK=infinity
    LimitNOFILE=65535
    User=oracle
    Group=oinstall

    Environment=ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
    Environment=PATH=$PATH:$ORACLE_HOME/bin
    Environment=LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
    Restart=always

    ExecStart=/etc/init.d/oracle start
    ExecStop=/etc/init.d/oracle stop
    ExecReload=/etc/init.d/oracle restart

    [Install]
    WantedBy=multi-user.target
    ```

  3. 然后启用这个文件并重启服务:

    sudo systemctl daemon-reload
    sudo systemctl start oracle
    sudo systemctl enable oracle

以上两种方法都可以完成Oracle的启动和开机自启动。

示例:

  1. 启动Oracle

    /etc/init.d/oracle start

  2. 停止Oracle

    /etc/init.d/oracle stop

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Linux下的Oracle启动脚本及其开机自启动 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • js实现上传图片并显示图片名称

    下面是实现“js实现上传图片并显示图片名称”的完整攻略。 1. 实现上传图片功能 首先,我们需要在HTML代码中添加一个文件上传控件: <input type="file" id="upload" name="upload"> 然后在JavaScript代码中添加文件上传的逻辑处理: c…

    database 2023年5月22日
    00
  • Python 基于Python从mysql表读取千万数据实践

    基于Python 从mysql表读取千万数据实践   by:授客 QQ:1033553122 场景:   有以下两个表,两者都有一个表字段,名为waybill_no,我们需要从tl_waybill_bar_record表读取1000w条唯一的waybill_no,然后作为INSERT SQL语句的一部分,填充到ts_order_waybill的waybill…

    MySQL 2023年4月13日
    00
  • python的mysqldb安装步骤详解

    下面我将详细讲解“Python的MySQLdb安装步骤详解”的完整攻略。 1. 安装MySQL服务器和客户端组件 在安装MySQLdb之前,首先需要安装MySQL服务器和客户端组件。MySQL可以通过官方网站提供的安装包进行下载和安装。安装方法可以参考MySQL官方文档,文档链接如下: https://dev.mysql.com/doc/mysql-inst…

    database 2023年5月22日
    00
  • Python第三方模块apscheduler安装和基本使用

    Python第三方模块apscheduler安装和基本使用 当我们需要在Python中实现定时执行任务的功能时,可以使用第三方模块 apscheduler。 apscheduler 是一个轻量级的 Python 定时任务框架,可以支持间隔触发、周期触发和定时执行等功能。下面是 apscheduler 的安装和基本使用方法。 安装 使用 pip 包管理器安装 …

    database 2023年5月22日
    00
  • 使用mybatis框架连接mysql数据库的超详细步骤

    使用MyBatis框架连接MySQL数据库的详细步骤如下: 1. 环境准备 首先需要安装MySQL数据库和MyBatis框架,以及相关的依赖包。假设已经安装完成,接下来的步骤将依次进行。 2. 创建数据库和表 创建数据库和表的步骤不在本次的讲解范围内,我们假设已经创建好了名为mybatis_test的数据库和名为user_info的表,并且该表中包含id、n…

    database 2023年5月19日
    00
  • MySQL根据某一个或者多个字段查找重复数据的sql语句

    下面是MySQL根据某一个或多个字段查找重复数据的sql语句攻略: 方式一:使用GROUP BY和HAVING语句 第一步:使用GROUP BY语句根据某一个或多个字段进行分组 在查找重复数据时,第一步是需要用到GROUP BY语句进行分组。例如,我们有一个user表,其中包含id、name、email三个字段,现在我们要根据email字段查找重复数据,可以…

    database 2023年5月22日
    00
  • 数据库表的查询操作实践演练(实验三)

    “数据库表的查询操作实践演练(实验三)”旨在帮助学习者深入了解SQL语言的查询操作,并通过实践加深对查询操作的理解和掌握。本次实验的主要内容涉及SELECT语句、WHERE子句、ORDER BY子句、GROUP BY子句、HAVING子句、LIKE运算符、IN运算符等方面,下面将详细讲解完整攻略。 一、实验准备 在进行实验前,需要完成以下准备工作: 安装My…

    database 2023年5月19日
    00
  • 聊聊Docker不适合跑 MySQL 的N个原因

    下面是关于“聊聊Docker不适合跑MySQL的N个原因”的完整攻略。 1.概述 Docker 极大地简化了应用程序的部署和管理过程,但是在运行 MySQL 这类数据库服务时,Docker 可能并不是最好的选择。在这篇文档中,我们将讨论 Docker 不适合跑 MySQL 的 N 个原因。 2.Docker 部署 MySQL 的问题 2.1. 数据持久化的问…

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部