MCPcopy Index your code
hub / github.com/danfengcao/binlog2sql / parse_args

Function parse_args

binlog2sql/binlog2sql_util.py:54–102  ·  view source on GitHub ↗

parse args for binlog2sql

()

Source from the content-addressed store, hash-verified

52
53
54def parse_args():
55 """parse args for binlog2sql"""
56
57 parser = argparse.ArgumentParser(description='Parse MySQL binlog to SQL you want', add_help=False)
58 connect_setting = parser.add_argument_group('connect setting')
59 connect_setting.add_argument('-h', '--host', dest='host', type=str,
60 help='Host the MySQL database server located', default='127.0.0.1')
61 connect_setting.add_argument('-u', '--user', dest='user', type=str,
62 help='MySQL Username to log in as', default='root')
63 connect_setting.add_argument('-p', '--password', dest='password', type=str, nargs='*',
64 help='MySQL Password to use', default='')
65 connect_setting.add_argument('-P', '--port', dest='port', type=int,
66 help='MySQL port to use', default=3306)
67 interval = parser.add_argument_group('interval filter')
68 interval.add_argument('--start-file', dest='start_file', type=str, help='Start binlog file to be parsed')
69 interval.add_argument('--start-position', '--start-pos', dest='start_pos', type=int,
70 help='Start position of the --start-file', default=4)
71 interval.add_argument('--stop-file', '--end-file', dest='end_file', type=str,
72 help="Stop binlog file to be parsed. default: '--start-file'", default='')
73 interval.add_argument('--stop-position', '--end-pos', dest='end_pos', type=int,
74 help="Stop position. default: latest position of '--stop-file'", default=0)
75 interval.add_argument('--start-datetime', dest='start_time', type=str,
76 help="Start time. format %%Y-%%m-%%d %%H:%%M:%%S", default='')
77 interval.add_argument('--stop-datetime', dest='stop_time', type=str,
78 help="Stop Time. format %%Y-%%m-%%d %%H:%%M:%%S;", default='')
79 parser.add_argument('--stop-never', dest='stop_never', action='store_true', default=False,
80 help="Continuously parse binlog. default: stop at the latest event when you start.")
81 parser.add_argument('--help', dest='help', action='store_true', help='help information', default=False)
82
83 schema = parser.add_argument_group('schema filter')
84 schema.add_argument('-d', '--databases', dest='databases', type=str, nargs='*',
85 help='dbs you want to process', default='')
86 schema.add_argument('-t', '--tables', dest='tables', type=str, nargs='*',
87 help='tables you want to process', default='')
88
89 event = parser.add_argument_group('type filter')
90 event.add_argument('--only-dml', dest='only_dml', action='store_true', default=False,
91 help='only print dml, ignore ddl')
92 event.add_argument('--sql-type', dest='sql_type', type=str, nargs='*', default=['INSERT', 'UPDATE', 'DELETE'],
93 help='Sql type you want to process, support INSERT, UPDATE, DELETE.')
94
95 # exclusive = parser.add_mutually_exclusive_group()
96 parser.add_argument('-K', '--no-primary-key', dest='no_pk', action='store_true',
97 help='Generate insert sql without primary key if exists', default=False)
98 parser.add_argument('-B', '--flashback', dest='flashback', action='store_true',
99 help='Flashback data to start_position of start_file', default=False)
100 parser.add_argument('--back-interval', dest='back_interval', type=float, default=1.0,
101 help="Sleep time between chunks of 1000 rollback sql. set it to 0 if do not need sleep")
102 return parser
103
104
105def command_line_args(args):

Callers 1

command_line_argsFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected