feat: 添加数据库依赖检查脚本
功能: - SQLite 数据库检查 - PostgreSQL 服务检查 - Qdrant 服务检查 - MongoDB 服务检查 检查项目: - 数据库文件是否存在 - 服务是否运行 - 数据库/集合是否存在 - 必需服务状态总结 用法: ./scripts/check_db_dependencies.sh
This commit is contained in:
109
scripts/check_db_dependencies.sh
Executable file
109
scripts/check_db_dependencies.sh
Executable file
@@ -0,0 +1,109 @@
|
||||
#!/bin/bash
|
||||
# 数据库依赖检查脚本
|
||||
|
||||
echo "================================================================================
|
||||
数据库依赖检查
|
||||
================================================================================
|
||||
"
|
||||
|
||||
USER_HOME=$(eval echo ~${SUDO_USER:-$USER})
|
||||
|
||||
echo "1. SQLite 数据库检查"
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
|
||||
# Momentry Studio SQLite
|
||||
STUDIO_DB="/Users/accusys/momentry_studio/data/users/demo.sqlite"
|
||||
if [ -f "$STUDIO_DB" ]; then
|
||||
echo "✅ Momentry Studio SQLite: $STUDIO_DB"
|
||||
echo " 大小: $(ls -lh "$STUDIO_DB" | awk '{print $5}')"
|
||||
echo " 表数量: $(sqlite3 "$STUDIO_DB" "SELECT COUNT(*) FROM sqlite_master WHERE type='table';" 2>/dev/null || echo "N/A")"
|
||||
else
|
||||
echo "❌ Momentry Studio SQLite: 不存在"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
|
||||
# MarkBase SQLite
|
||||
MARKBASE_DB="${USER_HOME}/markbase/data/auth.sqlite"
|
||||
if [ -f "$MARKBASE_DB" ]; then
|
||||
echo "✅ MarkBase SQLite: $MARKBASE_DB"
|
||||
echo " 大小: $(ls -lh "$MARKBASE_DB" | awk '{print $5}')"
|
||||
else
|
||||
echo "❌ MarkBase SQLite: 不存在"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "2. PostgreSQL 检查"
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
|
||||
# 检查 PostgreSQL 服务
|
||||
if lsof -i :5432 >/dev/null 2>&1; then
|
||||
echo "✅ PostgreSQL 服务: 运行中 (端口 5432)"
|
||||
|
||||
# 检查 momentry 数据库
|
||||
if psql -U ${USER:-postgres} -l 2>/dev/null | grep -q "momentry"; then
|
||||
echo "✅ Momentry 数据库: 存在"
|
||||
else
|
||||
echo "❌ Momentry 数据库: 不存在"
|
||||
fi
|
||||
else
|
||||
echo "❌ PostgreSQL 服务: 未运行"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "3. Qdrant 检查"
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
|
||||
# 检查 Qdrant 服务
|
||||
if curl -s http://localhost:6333/collections 2>/dev/null | grep -q "result"; then
|
||||
echo "✅ Qdrant 服务: 运行中 (端口 6333)"
|
||||
|
||||
# 检查 momentry 集合
|
||||
if curl -s http://localhost:6333/collections/momentry_rule1 2>/dev/null | grep -q "momentry_rule1"; then
|
||||
echo "✅ Momentry 集合: 存在"
|
||||
else
|
||||
echo "⚠️ Momentry 集合: 不存在"
|
||||
fi
|
||||
else
|
||||
echo "❌ Qdrant 服务: 未运行"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "4. MongoDB 检查"
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
|
||||
# 检查 MongoDB 服务
|
||||
if lsof -i :27017 >/dev/null 2>&1; then
|
||||
echo "✅ MongoDB 服务: 运行中 (端口 27017)"
|
||||
|
||||
# 检查 momentry 数据库
|
||||
if mongosh --quiet --eval "db.getSiblingDB('momentry').stats()" 2>/dev/null | grep -q "db"; then
|
||||
echo "✅ Momentry 数据库: 存在"
|
||||
else
|
||||
echo "⚠️ Momentry 数据库: 不存在"
|
||||
fi
|
||||
else
|
||||
echo "❌ MongoDB 服务: 未运行"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "================================================================================
|
||||
检查总结
|
||||
================================================================================
|
||||
"
|
||||
|
||||
echo "必需服务状态:"
|
||||
echo " Momentry Studio (前端):"
|
||||
echo " - SQLite: $([ -f "$STUDIO_DB" ] && echo "✅ 就绪" || echo "❌ 缺失")"
|
||||
echo ""
|
||||
echo " Momentry Core (后端):"
|
||||
echo " - PostgreSQL: $([ -f "$STUDIO_DB" ] && lsof -i :5432 >/dev/null 2>&1 && echo "✅ 运行中" || echo "❌ 未运行")"
|
||||
echo " - Qdrant: $(curl -s http://localhost:6333/health 2>/dev/null | grep -q "ok" && echo "✅ 运行中" || echo "❌ 未运行")"
|
||||
echo " - MongoDB: $(mongosh --quiet --eval "db.runCommand({ping:1})" 2>/dev/null | grep -q "ok" && echo "✅ 运行中" || echo "❌ 未运行")"
|
||||
echo ""
|
||||
echo " MarkBase Core (文件管理):"
|
||||
echo " - SQLite: $([ -f "$MARKBASE_DB" ] && echo "✅ 就绪" || echo "❌ 缺失")"
|
||||
echo ""
|
||||
|
||||
echo "================================================================================
|
||||
"
|
||||
Reference in New Issue
Block a user