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

在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日

相关文章

  • MySQL子查询详解

    子查询,也被称为嵌套查询,是在一个查询语句中嵌套另一个查询语句的查询。子查询可以作为主查询的查询条件,也可以用于在查询结果中过滤数据。 MySQL中的子查询有以下几个特点: 子查询必须包含在圆括号内。 子查询可以嵌套多层。 子查询可以返回单个值或多个值。 下面是一些常见的子查询例子: 1.查询学生成绩大于班级平均成绩的学生信息: SELECT id, nam…

    MySQL 2023年3月9日
    00
  • Python使用htpasswd实现基本认证授权的例子

    Python使用htpasswd实现基本认证授权的例子 简介 htpasswd是Apache HTTP服务器的一部分,用于创建和更新基于用户名和密码的认证。在Web应用程序中,可以使用htpasswd来实现用户的认证和授权。Python中可以使用htpasswd库来调用htpasswd相关的功能,以实现基本认证授权的功能。 步骤 安装htpasswd库 使用…

    database 2023年5月22日
    00
  • MySQL REVOKE:删除用户权限

    MySQL是一个非常流行的关系型数据库管理系统,它允许管理员授予和收回用户对数据库的访问权限。当不再需要用户访问数据库时,管理员可以使用MySQL的REVOKE命令来撤销该用户的权限,以保护数据库的安全性。本文将介绍MySQL REVOKE命令的用法和操作步骤。 REVOKE命令的语法和参数 首先,我们来看一下REVOKE命令的语法和参数: REVOKE p…

    MySQL 2023年3月10日
    00
  • Python实现变声器功能(萝莉音御姐音)

    以下是“Python实现变声器功能(萝莉音御姐音)”的完整攻略: 问题概述 这里的“变声器”指的是可以将一段音频文件的音调进行调整的程序,它可以让音频文件听起来像“萝莉音”、“御姐音”等等声音。需要注意的是,需要使用Python语言实现这个功能。 解决方案 Python实现变声器功能主要需要两个步骤:音频处理和音频播放。 音频处理 在Python中,可以使用…

    database 2023年5月21日
    00
  • SQL Server 2005 定时执行SQL语句的方法

    SQL Server 2005可以使用SQL Server代理(Agent)来定时执行SQL语句。下面是具体步骤: 步骤一:启动SQL Server代理服务 要执行这个步骤,需要确保已经拥有管理员权限。 打开SQL Server Management Studio。 在“对象资源管理器”中,右键单击“SQL Server代理”。 选择“启动”。 如果“SQL…

    database 2023年5月21日
    00
  • linux下安装oracle后使用命令行启动的方法 linux启动oracle

    下面是在Linux下安装Oracle并使用命令行启动的详细攻略: 准备工作 下载Oracle安装包,需要根据自己的机器配置选择合适的版本。 安装所需依赖,包括开发工具、库文件等。可以通过yum安装。 安装过程 解压Oracle安装包,并运行 runInstaller 脚本。 在安装向导的界面中,按照提示设置必要参数,如安装路径、数据库名称、端口号等。 对于该…

    database 2023年5月22日
    00
  • PHP中PDO事务处理操作示例

    下面是关于PHP中PDO事务处理操作示例的完整攻略。 什么是PDO事务处理 在PHP中,使用PDO对数据库进行操作时,设置事务可以确保多个操作顺利执行或者回滚。事务可以理解为一组原子操作,要么全部执行,要么全部不执行。如果其中一个操作有错误,所有操作都将被回滚。可以避免数据一致性问题。 PDO事务操作示例 1. 开始事务,执行所有SQL语句,然后提交事务 t…

    database 2023年5月22日
    00
  • MySQL — 单行函数

      大小写控制函数 SELECT LOWER(‘HelloWrold’), UPPER(‘HelloWorld’);   字符控制函数 SELECT REPLACE(‘abcdababab’,’p’,’m’); 将“abcdababab”中的字符p替换成m;   SELECT TRIM(‘ ‘ FROM ‘ HHHHHello.HHHWorldHHHHH ‘…

    MySQL 2023年4月13日
    00
合作推广
合作推广
分享本页
返回顶部