def test_repair_to_mysql(self): rdovo = CopyDataOVO(db_host=M_HOST, db_user=M_USER, db_password=M_PASSWORD, db_database=M_DATABASE, original_columns=M_ORIGINAL_COLUMNS) # rdovo.get_tables_id_real(original_tablename=M_ORIGINAL_TABLENAME,repair_tablename=R_REPAIR_TABLENAME) rdovo.copy_game_data_main(original_tablename=M_ORIGINAL_TABLENAME, repair_tablename=M_REPAIR_TABLENAME, id_min=0, id_max=3000) rd = ResolveData(host=M_HOST, user=M_USER, password=M_PASSWORD, database=M_DATABASE, original_columns=M_ORIGINAL_COLUMNS, resolve_columns=M_RESOLVE_COLUMNS, resolve_index=R_RESOLVE_INDEX, no_resolve_columns=R_NO_RESOLVE_COLUMNS, db_type='mysql') rd.resolve_data_main(repair_tablename=M_REPAIR_TABLENAME, resolve_tablename=M_RESOLVE_TABLENAME, id_min=0, id_max=3000)
def test_create_in_mysql(self): rdovo = CopyDataOVO(db_host=M_HOST, db_user=M_USER, db_password=M_PASSWORD, db_database=M_DATABASE, original_columns=M_ORIGINAL_COLUMNS) rdovo.copy_data_to_idtable(tablename=M_AD_ORIGINAL_TABLENAME)
def test_repair_row(self): # myrow = list((1,'{"ts":"15655"","msg_type3":"end_up","isdds":false,"t":"d""}')) myrow = list((1, '{"ts":1564727341,"')) rdovo = CopyDataOVO('mysql_host', 'mysql_user', 'mysql_password', 'mysql_database', 'redshift_host', 'redshift_user', 'redshift_password', 'redshift_database', 'original_columns') id, myjson, errors = rdovo.repair_row(myrow) print(id) print(myjson)
def test_threading(self): rdovo = CopyDataOVO(db_host=M_HOST, db_user=M_USER, db_password=M_PASSWORD, db_database=M_DATABASE, original_columns=M_ORIGINAL_COLUMNS) print(rdovo._connect)
def test_reset_in_mysql(self): rdovo = CopyDataOVO(db_host=M_HOST, db_user=M_USER, db_password=M_PASSWORD, db_database=M_DATABASE, original_columns=M_ORIGINAL_COLUMNS) rdovo._connect() temp1 = None for i in range(100): rdovo.db.reset_auto_increment_id(tablename=M_AD_ORIGINAL_TABLENAME) _, result = rdovo.db.sql_execute( f'select * from {M_AD_ORIGINAL_TABLENAME} limit 100,1;') print(i, result) if result != temp1: print(f'=========={i}============' * 5) temp1 = result
def copy_adjust_data(id_min, id_max): rmdovo = CopyDataOVO(db_type='mysql', db_host=M_HOST, db_user=M_USER, db_password=M_PASSWORD, db_database=M_DATABASE, db2_type='redshift', db2_host=R_HOST, db2_user=R_USER, db2_password=R_PASSWORD, db2_database=R_DATABASE, original_columns=M_AD_ORIGINAL_COLUMNS) rmdovo.copy_adjust_data_main(original_tablename=M_AD_ORIGINAL_TABLENAME, repair_tablename=R_AD_REPAIR_TABLENAME, id_min=id_min, id_max=id_max, suffix='idxu')
parser = argparse.ArgumentParser(description='input id_min id_max') parser.add_argument('-id_min', type=int, default=None) parser.add_argument('-id_max', type=int, default=None) args = parser.parse_args() id_min = args.id_min id_max = args.id_max M_BUKEUP_GAME_TABLENAME = 'bidatanew' M_BUKEUP_GAME_COLUMNS = M_BUKEUP_TABLE[M_BUKEUP_GAME_TABLENAME] for tablename, columns in M_BUKEUP_TABLE.items(): bakeup_logger.info(f'\n' + f"开始备份【{tablename}】".center(80, '=')) to_tablename = tablename + '_bakeup' + f"{M_BUKEUP_FROM_HOST.replace('.', '_')}" rmdovo = CopyDataOVO(db_type='mysql', db_host=M_BUKEUP_FROM_HOST, db_user=M_BUKEUP_USER, db_password=M_BUKEUP_FROM_PASSWORD, db_database=M_BUKEUP_DATABASE, db2_type='mysql', db2_host=M_BUKEUP_TO_HOST, db2_user=M_BUKEUP_USER, db2_password=M_BUKEUP_TO_PASSWORD, db2_database=M_BUKEUP_DATABASE, original_columns=columns) rmdovo.copy_game_data_main(original_tablename=tablename, repair_tablename=to_tablename, id_min=id_min, id_max=id_max, is_repair=False) bakeup_logger.info(f'\n' + f"备份【{tablename}】结束!".center(80, '='))