db.go 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. package public
  2. import (
  3. "log"
  4. util "app.yhyue.com/moapp/jybase/common"
  5. . "app.yhyue.com/moapp/jybase/mongodb"
  6. "app.yhyue.com/moapp/jybase/mysql"
  7. )
  8. var (
  9. DbConf *dbConf
  10. Mysql_Main *mysql.Mysql
  11. Mysql_Main_Bxt *mysql.Mysql
  12. Mysql_From_Jianyu *mysql.Mysql
  13. Mysql_From_Jypoints *mysql.Mysql
  14. Mysql_From_Jyactivities *mysql.Mysql
  15. Mgo MongodbSim
  16. )
  17. type dbConf struct {
  18. Mongodb struct {
  19. Main *mgoConf
  20. }
  21. Mysql struct {
  22. Main *mysqlConf
  23. Main_bxt *mysqlConf
  24. From_jianyu *mysqlConf
  25. From_jyactivities *mysqlConf
  26. From_jypoints *mysqlConf
  27. }
  28. }
  29. type mgoConf struct {
  30. Address string
  31. Size int
  32. DbName string
  33. ReplSet string
  34. UserName string
  35. Password string
  36. }
  37. type mysqlConf struct {
  38. DbName string
  39. Address string
  40. UserName string
  41. PassWord string
  42. MaxOpenConns int
  43. MaxIdleConns int
  44. }
  45. func init() {
  46. util.ReadConfig("./db.json", &DbConf)
  47. if DbConf != nil {
  48. if DbConf.Mongodb.Main != nil {
  49. log.Println("初始化 mongodb main")
  50. Mgo = MongodbSim{
  51. MongodbAddr: DbConf.Mongodb.Main.Address,
  52. Size: DbConf.Mongodb.Main.Size,
  53. DbName: DbConf.Mongodb.Main.DbName,
  54. ReplSet: DbConf.Mongodb.Main.ReplSet,
  55. }
  56. Mgo.InitPool()
  57. }
  58. if DbConf.Mysql.Main != nil {
  59. log.Println("初始化 mysql main jianyu")
  60. Mysql_Main = &mysql.Mysql{
  61. Address: DbConf.Mysql.Main.Address,
  62. UserName: DbConf.Mysql.Main.UserName,
  63. PassWord: DbConf.Mysql.Main.PassWord,
  64. DBName: DbConf.Mysql.Main.DbName,
  65. MaxOpenConns: DbConf.Mysql.Main.MaxOpenConns,
  66. MaxIdleConns: DbConf.Mysql.Main.MaxIdleConns,
  67. }
  68. Mysql_Main.Init()
  69. }
  70. if DbConf.Mysql.Main_bxt != nil {
  71. log.Println("初始化 mysql main bxt")
  72. Mysql_Main_Bxt = &mysql.Mysql{
  73. Address: DbConf.Mysql.Main_bxt.Address,
  74. UserName: DbConf.Mysql.Main_bxt.UserName,
  75. PassWord: DbConf.Mysql.Main_bxt.PassWord,
  76. DBName: DbConf.Mysql.Main_bxt.DbName,
  77. MaxOpenConns: DbConf.Mysql.Main_bxt.MaxOpenConns,
  78. MaxIdleConns: DbConf.Mysql.Main_bxt.MaxIdleConns,
  79. }
  80. Mysql_Main_Bxt.Init()
  81. }
  82. if DbConf.Mysql.From_jianyu != nil {
  83. log.Println("初始化 mysql from jianyu")
  84. Mysql_From_Jianyu = &mysql.Mysql{
  85. Address: DbConf.Mysql.From_jianyu.Address,
  86. UserName: DbConf.Mysql.From_jianyu.UserName,
  87. PassWord: DbConf.Mysql.From_jianyu.PassWord,
  88. DBName: DbConf.Mysql.From_jianyu.DbName,
  89. MaxOpenConns: DbConf.Mysql.From_jianyu.MaxOpenConns,
  90. MaxIdleConns: DbConf.Mysql.From_jianyu.MaxIdleConns,
  91. }
  92. Mysql_From_Jianyu.Init()
  93. }
  94. if DbConf.Mysql.From_jyactivities != nil {
  95. log.Println("初始化 mysql from jyactivities")
  96. Mysql_From_Jyactivities = &mysql.Mysql{
  97. Address: DbConf.Mysql.From_jyactivities.Address,
  98. UserName: DbConf.Mysql.From_jyactivities.UserName,
  99. PassWord: DbConf.Mysql.From_jyactivities.PassWord,
  100. DBName: DbConf.Mysql.From_jyactivities.DbName,
  101. MaxOpenConns: DbConf.Mysql.From_jyactivities.MaxOpenConns,
  102. MaxIdleConns: DbConf.Mysql.From_jyactivities.MaxIdleConns,
  103. }
  104. Mysql_From_Jyactivities.Init()
  105. }
  106. if DbConf.Mysql.From_jypoints != nil {
  107. log.Println("初始化 mysql from jypoints")
  108. Mysql_From_Jypoints = &mysql.Mysql{
  109. Address: DbConf.Mysql.From_jypoints.Address,
  110. UserName: DbConf.Mysql.From_jypoints.UserName,
  111. PassWord: DbConf.Mysql.From_jypoints.PassWord,
  112. DBName: DbConf.Mysql.From_jypoints.DbName,
  113. MaxOpenConns: DbConf.Mysql.From_jypoints.MaxOpenConns,
  114. MaxIdleConns: DbConf.Mysql.From_jypoints.MaxIdleConns,
  115. }
  116. Mysql_From_Jypoints.Init()
  117. }
  118. }
  119. }