【开发记录】RTMP协议视频直播点播智能分析平台EasyDSS在非集群模式启用mysql数据库开发

TSINGSEE青犀视频云边端架构视频智能分析平台EasyDSS基于mysql数据库进行文件存储,由于之前有客户咨询过我们EasyDSS视频直播点播平台内数据库迁移的方式,因此我们也写过博文讲过这个问题:EasyDSS系统如何将数据库迁移到Mysql数据库

但是EasyDSS在非集群模式下无法启用mysql数据库,EasyDSS中默认一般是使用sqlite数据库,但是有些客户是需要使用mysql数据库,因为mysql数据库相比sqlite的能够储存的能力更大。

如何将使用mysql数据库?其实在整个程序的配置文件中添加可配置的mysql和sqlite的开关,代码中再判断配置文件是否打开了mysql数据库的开关,如果打开了,则可以使用mysql数据库。

//启用mysql数据库
if conf.DatabaseMysqlEnable {
   url = conf.DatabaseURLMysql
   lDB, err = gorm.Open(conf.DatabaseDialectMysql, url)
   if err != nil {
      conf2.SetShareSwitch(false, true)
      panic("failed to connect databaseMysql")
   }
   lDB.DB().SetMaxIdleConns(100)
   lDB.DB().SetMaxOpenConns(20)
} else {
   url = filepath.Join(conf.DirData, conf.DatabaseURLSqlite+"?loc=Asia/Shanghai")
   lDB, err = gorm.Open(conf.DatabaseDialectSqlite, url)
   if err != nil {
      panic("failed to connect databaseSqlite")
   }
   lDB.DB().SetMaxIdleConns(conf.DBMaxIdleConn)
   lDB.DB().SetMaxOpenConns(conf.DBMaxOpenConn)
}

EasyDSS视频直播点播平台播放界面:

原文地址:https://www.cnblogs.com/easydss/p/14001314.html