init_db.py 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #!/usr/bin/env python
  2. """
  3. 数据库初始化脚本
  4. 创建用户表和相关索引
  5. """
  6. import os
  7. import sys
  8. import logging
  9. # 添加项目根目录到Python路径
  10. sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
  11. from app.core.system.auth import init_db
  12. # 配置日志
  13. logging.basicConfig(
  14. level=logging.INFO,
  15. format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
  16. )
  17. logger = logging.getLogger(__name__)
  18. def init_database():
  19. """
  20. 初始化数据库,创建必要的表和索引
  21. """
  22. logger.info("开始初始化数据库...")
  23. # 初始化用户表
  24. if init_db():
  25. logger.info("用户表初始化成功")
  26. else:
  27. logger.error("用户表初始化失败")
  28. # 可以在这里添加其他表的初始化
  29. logger.info("数据库初始化完成")
  30. if __name__ == "__main__":
  31. try:
  32. init_database()
  33. except Exception as e:
  34. logger.error(f"数据库初始化失败: {str(e)}")
  35. sys.exit(1)
  36. sys.exit(0)