我使用dbisql连接到Sybase IQ数据库 脚本如下:
RESULT=$(dbisql -c "uid=dba;pwd=aaaaaa;eng=${ENGINE_NAME}" -onerror continue -nogui read ./dbScript/load_A_L_ART_PORT_D.sql [$FILE_NAME])
echo $RESULT |grep -q "SQLCODE"
if [ $? -eq 0 ]
then
write_log "[File]: ${FILE_NAME} import failed ..." ${LOG_NAME};
write_log "ERROR Message: ${RESULT}" ${LOG_NAME};
else
mv $FILE_NAME ${FILE_NAME}_imported
mv ${FILE_NAME}_imported $IMPORTED_DIR
write_log "[File]: ${FILE_NAME} import succeed ..." ${LOG_NAME};
write_log "Import Message: ${RESULT}" ${LOG_NAME};
fi
在数据库运行时,一切正常。但是当数据库关闭时。 发生错误:
[2] Please input database engine name[eng].(eg:iqcoor_zdc)
INPUT:
iqcoor_zdc
[1/50]Importing A_L_ART_PORT_H ...
**Could not connect to the database.
Database server not found
SQLCODE=-100, ODBC 3 State="08001"**
如何在执行sql脚本之前检查数据库是否正在运行? 或其他连接问题。
谢谢!
答案 0 :(得分:1)
您可以使用'dbping'实用程序测试IQ服务器是否正在运行。