0
点赞
收藏
分享

微信扫一扫

Linux服务器Oracle19c开机启动

胡桑_b06e 2022-03-24 阅读 80

安装完Centos7下的oracle19c,下面开始设置开机自启动。

方法1

# 1、root用户修改 /etc/oratab, 将上面的N改为Y
vi /etc/oratab
orcl:/data1/opt/oracle/app/oracle/product/19/dbhome_1:N
将上面的N改为Y


# 2、oracle用户修改
su - oracle
cd $ORACLE_HOME/bin
vi dbstart
修改 #ORACLE_HOME_LISTNER=$1 为 ORACLE_HOME_LISTNER=$ORACLE_HOME

vi dbshut
修改 #ORACLE_HOME_LISTNER=$1 为 ORACLE_HOME_LISTNER=$ORACLE_HOME

# 3、root用户修改
chmod 777 /etc/rc.d/rc.local
vi /etc/rc.d/rc.local

添加 
# for oracle
su - oracle -lc 'lsnrctl start'
su - oracle -lc 'dbstart'

# 4. 重启,测试成功
reboot 或 init 6

注意: su - oracle -lc 'lsnrctl start'

-l 表示同时切换用户目录。比如你要换到oracle用户下你的目录就同时在oracle目录下了。
-c则表示执行完命令好再返回到原来的用户。

方法2(推荐)

# 1. 需要先修改一下 oracle 的启动脚本配置:
vi /etc/oratab
将“ORCLCDB:/opt/oracle/product/19c/dbhome_1:N”
改为“ORCLCDB:/opt/oracle/product/19c/dbhome_1:Y”
保存退出

# 2. 然后设置数据库的启动命令
# 增加的内容为: 注意改成自己的$ORACLE_HOME
vi /usr/bin/oracle.sh  

#! /bin/bash
#  script  For oracle19c.service
/data1/opt/oracle/app/oracle/product/19/dbhome_1/bin/lsnrctl start
/data1/opt/oracle/app/oracle/product/19/dbhome_1/bin/dbstart /data1/opt/oracle/app/oracle/product/19/dbhome_1/dbhome_1


# 3. 设置文件oracle.sh的读写权限
chmod 777 /usr/bin/oracle.sh

# 4. 设置 oracle19c.service
vi /etc/systemd/system/oracle19c.service
编辑添加内容为:

[Unit]
Description=Oracle19c
After=syslog.target network.target

[Service]
LimitMEMLOCK=infinity
LimitNOFILE=65535
Type=oneshot
RemainAfterExit=yes
User=oracle
Environment="ORACLE_HOME=/opt/oracle/product/19c/dbhome_1"
ExecStart=/usr/bin/oracle.sh

[Install]
WantedBy=multi-user.target

# 5. 设置开机自动启动
systemctl enable oracle19c

# 6. 重启测试.
reboot 或者 ini 6
成功. 
systemctl status oracle19c



## 错误信息1
[root@ora-srv1 ~]# /data1/opt/oracle/app/oracle/product/19/dbhome_1/bin/lsnrctl start

LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 24-MAR-2022 09:41:43

Copyright (c) 1991, 2019, Oracle.  All rights reserved.

Message 1070 not found; No message file for product=network, facility=TNSTNS-12545: Message 12545 not found; No message file for product=network, facility=TNS
 TNS-12560: Message 12560 not found; No message file for product=network, facility=TNS
  TNS-00515: Message 515 not found; No message file for product=network, facility=TNS
   Linux Error: 2: No such file or directory

# systemctl start oracle19c 出现的错误
324 10:23:04 ora-srv1 systemd[1]: Starting Oracle19c...
324 10:23:10 ora-srv1 oracle.sh[1135]: LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 24-MAR-2022 10:23:10
324 10:23:10 ora-srv1 oracle.sh[1135]: Copyright (c) 1991, 2019, Oracle.  All rights reserved.
324 10:23:10 ora-srv1 oracle.sh[1135]: Message 1070 not found; No message file for product=network, facility=TNSTNS-12545: Message 12545 not found; ...cility=TNS
324 10:23:10 ora-srv1 oracle.sh[1135]: TNS-12560: Message 12560 not found; No message file for product=network, facility=TNS
324 10:23:10 ora-srv1 oracle.sh[1135]: TNS-00515: Message 515 not found; No message file for product=network, facility=TNS
324 10:23:10 ora-srv1 oracle.sh[1135]: Linux Error: 2: No such file or directory
324 10:23:11 ora-srv1 oracle.sh[1135]: mkdir: 无法创建目录"/network": 权限不够
324 10:23:11 ora-srv1 oracle.sh[1135]: Failed to auto-start Oracle Net Listener using /bin/tnslsnr
324 10:23:12 ora-srv1 oracle.sh[1135]: Processing Database instance "orcl": log file /data1/opt/oracle/app/oracle/product/19/dbhome_1/rdbms/log/startup.log
Hint: Some lines were ellipsized, use -l to show in full.

这个问题有待解决!


举报

相关推荐

0 条评论