shell脚本检测数据库服务是否正常开启

shell脚本检测数据库服务是否正常开启

#!/bin/sh
#检测数据库服务是否开启
db_data=`su - oracle <<EOF
sqlplus -s  username/pwd@xx.0.0.105:1521/ora10g <<!``
set heading off 
set echo off
set feedback off
set underline off
select status from v\\\\\\$instance;
exit
!
EOF`
db_status=`echo $db_data | awk '{print $1}'` 
if [ $db_status == "OPEN" ]
then
  echo "dbServerStatus|Y"
else
  echo "dbServerStatus|N"
fi

只要将username换成数据库的用户名,pwd换成数据库密码,再把对应的地址切换一下,就可以直接使用了。
注意:如果在windows下编辑shell脚本,然后在linux环境下运行的话,可能会出现语法错误。这是由于windows下的换行符,与linux下的换行符不一致,而导致的。
解决方案:在上期

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Windows中,我们可以使用PowerShell脚本来备份数据库到FTP服务器。下面是一个示例脚本: ```powershell # 设置数据库和FTP服务器的相关信息 $databaseServer = "数据库服务器名称" $databaseName = "数据库名称" $databaseUsername = "数据库用户名" $databasePassword = "数据库密码" $ftpServer = "FTP服务器地址" $ftpUsername = "FTP用户名" $ftpPassword = "FTP密码" # 创建备份文件名,基于当前日期和时间 $backupDate = Get-Date -Format "yyyyMMdd_HHmmss" $backupFileName = "$databaseName" + "_" + "$backupDate" + ".bak" # 使用sqlcmd命令备份数据库到本地 $sqlcmdCommand = "sqlcmd -S $databaseServer -d $databaseName -U $databaseUsername -P $databasePassword -Q `"BACKUP DATABASE $databaseName TO DISK=N'C:\Temp\$backupFileName'`"" Invoke-Expression $sqlcmdCommand # 使用ftp命令上传备份文件到FTP服务器 $ftpCommand = @" open $ftpServer $ftpUsername $ftpPassword put C:\Temp\$backupFileName $backupFileName bye "@ $ftpCommandPath = "C:\Temp\ftp_command.txt" $ftpCommand | Out-File -FilePath $ftpCommandPath ftp -s:$ftpCommandPath # 删除本地备份文件和FTP命令文件 Remove-Item -Path "C:\Temp\$backupFileName" Remove-Item -Path $ftpCommandPath ``` 注意,上述脚本中的数据库服务器、数据库名称、用户名、密码,以及FTP服务器、用户名、密码需要按照实际情况进行替换。此外,脚本会将备份文件保存在本地的C:\Temp目录下,并将文件上传到FTP服务器后再删除本地备份文件。 希望以上内容对您有所帮助!如有其他问题,继续提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值