# -*- 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 = options.db.split(',') def _importGunsDB(): _utils.importMysql(mysql_conf, 'guns', 'guns.sql') def _importGlobalRedis(): _utils.importRedis(global_redis_conf, 'global redis', 'global.rdb') print('正在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'] ) print(cmdline) ret = os.system(cmdline) def _importGameDBAndRedis(server_id): conf = _utils.getGameConf(server_id) _utils.importMysql(conf, 'legend_' + str(server_id), 'legend_%d.sql' % (server_id)) _utils.importMysql(conf, 'logger_' + str(server_id), 'logger_%d.sql' % (server_id)) _utils.importRedis(conf, 'game redis', 'dump_%d.rdb' % (server_id)) for dbname in dbs: if dbname == 'guns': _importGunsDB() elif dbname == 'global': _importGlobalRedis() else: _importGameDBAndRedis(int(dbname))