2020-03-03 18:20:02 +08:00

66 lines
2.0 KiB
Python

# -*- coding: utf-8 -*-
#!/usr/bin/python
import os
import sys
import time
import json
import redis
import pymysql
import datetime
import pprint
from string import Template
from optparse import OptionParser
import _utils
global_redis_conf = _utils.getGlobalRedisConf()
mysql_conf = _utils.getMysqlConf()
optparser = OptionParser(usage="%prog [options]")
optparser.add_option("-d",
"--db",
dest = "db",
help = "guns,global,serverid1,serverid2,serverid8-serveid20")
(options, args) = optparser.parse_args()
_utils.checkDBOption(options.db)
_utils.printDBOption(options.db)
dbs = _utils.parseOption(options.db)
_utils.info(dbs)
def _importGunsDB():
_utils.importMysql(mysql_conf, 'guns', 'guns_admin.sql', _utils.CHAR_SET_UTF8MB4)
def _importGlobalRedis():
_utils.importRedis(global_redis_conf, 'global redis', 'dump_6800.rdb')
time.sleep(10)
_utils.info('正在import _init_global_redis.script host:%s port:%d' % (
global_redis_conf['redis_host'],
global_redis_conf['redis_port']))
cmdline = 'cat _init_global_redis.script | redis-cli -h %s -p %s' % (
global_redis_conf['redis_host'],
global_redis_conf['redis_port']
)
_utils.info(cmdline)
ret = _utils.runLocalCmd(cmdline)
def _importGameDBAndRedis(server_id):
conf = _utils.getGameConf(server_id)
_utils.importMysql(conf, 'legend_' + str(server_id), 'legend_%d.sql' % (server_id),
_utils.CHAR_SET_UTF8MB4)
_utils.importMysql(conf, 'logger_' + str(server_id), 'logger_%d.sql' % (server_id),
_utils.CHAR_SET_UTF8MB4,
True)
if server_id < 50:
_utils.importRedis(conf, 'game redis', 'dump_%d.rdb' % (6800 + server_id))
else:
_utils.importRedis(conf, 'game redis', 'rdb_%d.rdb' % (6800 + server_id))
for dbname in dbs:
if dbname == 'guns':
_importGunsDB()
elif dbname == 'global':
_importGlobalRedis()
else:
_importGameDBAndRedis(int(dbname))