我对 Windows 比较熟悉,所以 Linux 目前对我来说是一个比较陌生的地方,所以如果这是一个愚蠢的问题,请原谅我。
基本上,我想知道是否有人对编写脚本以关闭/启动、备份和许多其他常规 DBA 任务有任何建议和/或建议。
我还将了解有关如何设置脚本以在多宿主环境中更改环境/家庭的任何指导。
我确实忘记提及 RHEL 5 的默认 shell 的一件事。
谢谢。
无论操作系统如何,Oracle 都使用 sqlplus 和 rman 工具进行管理。您的脚本不应该需要太多更改即可在 Linux 上运行。
如上所述,使用 crontab(查看 cron 联机帮助页)并且不要忘记将用于执行维护的帐户添加到 dba 组。
我通常使用 2 个脚本:第一个设置环境,调用将执行操作的第二个。
它可能是这样的:
shutdown_DevDB1.sh
#!/bin/sh
set ORACLE_SID=DevDB
set ORACLE_HOME=/opt/oracle/Home1
set ORA_SCRIPTS=/opt/oracle/scripts
if [ -f $ORA_SCRIPTS/$ORACLE_HOME/$ORACLE_SID-shutdown.sql ]; then
$ORA_SHUT = $ORA_SCRIPTS/$ORACLE_HOME/$ORACLE_SID-shutdown.sql
else
$ORA_SHUT = $ORA_SCRIPTS/generic/shutdown.sql
fi
$ORA_SCRIPTS/shutdown.sh
Run Code Online (Sandbox Code Playgroud)
关机.sh
#!/bin/sh
echo `date`: shutting down $ORACLE_SID.
$ORACLE_HOME/bin/sqlplus /nolog @$ORA_SHUT
if [ $! != 0 ]; then
echo Impossible to shut down $ORACLE_SID
exit -1
fi
echo $ORACLE_SID has been shut down.
Run Code Online (Sandbox Code Playgroud)
关闭文件
connect / as sysdba
shutdown immediate;
quit;
Run Code Online (Sandbox Code Playgroud)
大多数情况下,您只需复制第一个脚本并更改前三行即可。如果您有一个具有某些奇点的数据库,请将 sql 文件放在正确的位置以使用它而不是通用文件。
归档时间: |
|
查看次数: |
659 次 |
最近记录: |