Exemple #1
0
        public async Task DumpBinlogAsync(DatabaseConnection channel, ConnectionOptions options)
        {
            long     serverId = options.Blocking ? options.ServerId : 0;
            ICommand command  = null;

            if (options.Binlog.StartingStrategy == StartingStrategy.FromGtid)
            {
                command = new DumpBinlogGtidCommand(serverId, options.Binlog.Filename, options.Binlog.Position, options.Binlog.Gtid);
            }
            else
            {
                command = new DumpBinlogCommand(serverId, options.Binlog.Filename, options.Binlog.Position);
            }

            await channel.WriteCommandAsync(command, 0);
        }
Exemple #2
0
        public async Task DumpBinlogAsync(DatabaseConnection channel, ConnectionOptions options, CancellationToken cancellationToken = default)
        {
            long     serverId = options.Blocking ? options.ServerId : 0;
            ICommand command  = null;

            if (options.Binlog.StartingStrategy == StartingStrategy.FromGtid)
            {
                var gtidSet = (GtidSet)options.Binlog.GtidState;
                command = new DumpBinlogGtidCommand(serverId, options.Binlog.Filename, options.Binlog.Position, gtidSet);
            }
            else
            {
                command = new DumpBinlogCommand(serverId, options.Binlog.Filename, options.Binlog.Position);
            }

            await channel.WriteCommandAsync(command, 0, cancellationToken);
        }