diff options
author | Vladislav Vaintroub <wlad@mariadb.com> | 2017-05-05 11:36:53 +0200 |
---|---|---|
committer | Vladislav Vaintroub <wlad@mariadb.com> | 2017-05-05 11:36:53 +0200 |
commit | a903be5d964fcda2c7f6eb649885dbd98901fb72 (patch) | |
tree | c4714d265a82b3c7aef7188853b439d8d54b8bf5 /extra/mariabackup/backup_mysql.h | |
parent | 1f63feb91a027cdccbf3c14d513d11acf8aa7431 (diff) | |
parent | 6935d66053b2c9723314d89d5169dcf34ed56c08 (diff) | |
download | mariadb-git-10.2-wlad-merge.tar.gz |
Merge commit '6935d66053b2c9723314d89d5169dcf34ed56c08' into bb-10.2-marko10.2-wlad-merge
# Conflicts:
# debian/control
# debian/mariadb-server-10.2.install
# include/my_sys.h
# mysql-test/collections/buildbot_suites.bat
# plugin/auth_dialog/CMakeLists.txt
# sql/CMakeLists.txt
# sql/sql_class.cc
# storage/innobase/CMakeLists.txt
# storage/innobase/log/log0crypt.cc
# win/packaging/CPackWixConfig.cmake
Diffstat (limited to 'extra/mariabackup/backup_mysql.h')
-rw-r--r-- | extra/mariabackup/backup_mysql.h | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/extra/mariabackup/backup_mysql.h b/extra/mariabackup/backup_mysql.h new file mode 100644 index 00000000000..3ccd7bdb613 --- /dev/null +++ b/extra/mariabackup/backup_mysql.h @@ -0,0 +1,92 @@ +#ifndef XTRABACKUP_BACKUP_MYSQL_H +#define XTRABACKUP_BACKUP_MYSQL_H + +#include <mysql.h> + +/* mysql flavor and version */ +enum mysql_flavor_t { FLAVOR_UNKNOWN, FLAVOR_MYSQL, + FLAVOR_PERCONA_SERVER, FLAVOR_MARIADB }; +extern mysql_flavor_t server_flavor; +extern unsigned long mysql_server_version; + +/* server capabilities */ +extern bool have_changed_page_bitmaps; +extern bool have_backup_locks; +extern bool have_lock_wait_timeout; +extern bool have_galera_enabled; +extern bool have_flush_engine_logs; +extern bool have_multi_threaded_slave; +extern bool have_gtid_slave; + + +/* History on server */ +extern time_t history_start_time; +extern time_t history_end_time; +extern time_t history_lock_time; + + +extern bool sql_thread_started; +extern char *mysql_slave_position; +extern char *mysql_binlog_position; +extern char *buffer_pool_filename; + +/** connection to mysql server */ +extern MYSQL *mysql_connection; + +void +capture_tool_command(int argc, char **argv); + +bool +select_history(); + +bool +flush_changed_page_bitmaps(); + +void +backup_cleanup(); + +bool +get_mysql_vars(MYSQL *connection); + +bool +detect_mysql_capabilities_for_backup(); + +MYSQL * +xb_mysql_connect(); + +MYSQL_RES * +xb_mysql_query(MYSQL *connection, const char *query, bool use_result, + bool die_on_error = true); + +void +unlock_all(MYSQL *connection); + +bool +write_current_binlog_file(MYSQL *connection); + +bool +write_binlog_info(MYSQL *connection); + +bool +write_xtrabackup_info(MYSQL *connection); + +bool +write_backup_config_file(); + +bool +lock_binlog_maybe(MYSQL *connection); + +bool +lock_tables(MYSQL *connection); + +bool +wait_for_safe_slave(MYSQL *connection); + +bool +write_galera_info(MYSQL *connection); + +bool +write_slave_info(MYSQL *connection); + + +#endif |