summaryrefslogtreecommitdiff
path: root/client/client_priv.h
Commit message (Collapse)AuthorAgeFilesLines
* Merge 10.3 into 10.4Marko Mäkelä2020-04-161-1/+2
|\ | | | | | | | | | | | | In main.index_merge_myisam we remove the test that was added in commit a2d24def8cc42d27c72d833abfb39ef24a2b96ba because it duplicates the test case that was added in commit 5af12e463549e4bbc2ce6ab720d78937d5e5db4e.
| * Merge 10.2 into 10.3Marko Mäkelä2020-04-151-1/+2
| |\
| | * Merge 10.1 into 10.2Marko Mäkelä2020-04-011-0/+1
| | |\
| | | * MDEV-22037: Add ability to skip content of some tables (work around for ↵Oleksandr Byelkin2020-03-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | MDEV-20939) --ignore-table-data parameter added.
* | | | MDEV-14101 Provide an option to select TLS protocol versionGeorg Richter2019-06-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Server and command line tools now support option --tls_version to specify the TLS version between client and server. Valid values are TLSv1.0, TLSv1.1, TLSv1.2, TLSv1.3 or a combination of them. E.g. --tls_version=TLSv1.3 --tls_version=TLSv1.2,TLSv1.3 In case there is a gap between versions, the lowest version will be used: --tls_version=TLSv1.1,TLSv1.3 -> Only TLSv1.1 will be available. If the used TLS library doesn't support the specified TLS version, it will use the default configuration. Limitations: SSLv3 is not supported. The default configuration doesn't support TLSv1.0 anymore. TLSv1.3 protocol currently is only supported by OpenSSL 1.1.0 (client and server) and GnuTLS 3.6.5 (client only). Overview of TLS implementations and protocols Server: +-----------+-----------------------------------------+ | Library | Supported TLS versions | +-----------+-----------------------------------------+ | WolfSSL | TLSv1.1, TLSv1,2 | +-----------+-----------------------------------------+ | OpenSSL | (TLSv1.0), TLSv1.1, TLSv1,2, TLSv1.3 | +-----------+-----------------------------------------+ | LibreSSL | (TLSv1.0), TLSv1.1, TLSv1,2, TLSv1.3 | +-----------+-----------------------------------------+ Client (MariaDB Connector/C) +-----------+-----------------------------------------+ | Library | Supported TLS versions | +-----------+-----------------------------------------+ | GnuTLS | (TLSv1.0), TLSv1.1, TLSv1.2, TLSv1.3 | +-----------+-----------------------------------------+ | Schannel | (TLSv1.0), TLSv1.1, TLSv1.2 | +-----------+-----------------------------------------+ | OpenSSL | (TLSv1.0), TLSv1.1, TLSv1,2, TLSv1.3 | +-----------+-----------------------------------------+ | LibreSSL | (TLSv1.0), TLSv1.1, TLSv1,2, TLSv1.3 | +-----------+-----------------------------------------+
* | | | Merge branch '10.3' into 10.4Oleksandr Byelkin2019-05-191-1/+1
|\ \ \ \ | |/ / /
| * | | Merge 10.2 into 10.3Marko Mäkelä2019-05-141-1/+1
| |\ \ \ | | |/ /
| | * | Merge 10.1 into 10.2Marko Mäkelä2019-05-131-1/+1
| | |\ \ | | | |/
| | | * Merge branch '5.5' into 10.1Vicențiu Ciorbaru2019-05-111-1/+1
| | | |\
| | | | * Update FSF AddressVicențiu Ciorbaru2019-05-111-1/+1
| | | | | | | | | | | | | | | | | | | | * Update wrong zip-code
* | | | | MDEV-18450 Slaves wait shutdownSergey Vojtovich2019-03-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The patches features an optional shutdown behavior to hold on until after all connected slaves have been sent the last binlogged event. The connected slave is one whose START SLAVE has been acknowledged and that was not stopped since that though it could be technically reconnecting in background. The solution therefore disallows killing the dump thread until is has found EOF of the latest binlog file. It is up to the shutdown requester (DBA) to set up a sufficiently large shutdown timeout value for shudown to wait patiently until lagging behind slaves have been synchronized. On the other hand if a specific slave needs exclusion from synchronization the DBA would have to stop it manually which would terminate its dump thread. `mysqladmin shutdown' is extended with a `--wait_for_all_slaves' option which translates to `SHUTDOW WAIT FOR ALL SLAVES' sql query to enable the feature on the client side. The patch also performs a small refactoring of the server shutdown around close_connections() to introduce kill thread phases which are two as of current.
* | | | | MDEV-16536 Remove shared memory transportVladislav Vaintroub2018-08-201-1/+1
|/ / / /
* | | | MDEV-13336 Add --ignore-database option to mysqldumpHartmut Holzgraefe2018-04-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow to exclude certain databases from an --all-databases dump, e.g. to be able to do mysqldump --all-databases --ignore-database=mysql to dump everything but the system tables.
* | | | mysqlbinlog now prints "# Number of rows" and stops on errorsMonty2017-12-291-0/+1
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Main problem was that no log-event print function checked for disk full error on the IO_CACHE. All changes in this patch only affects mysqlbinlog, not the server! - Changed all log-event print functions to return 1 on error - Fixed memory usage when not using --flashback. - Added printing of number of rows in row events. Can be disabled with --print-row-count=0 - Print annotated rows when using mysqlbinlog --short-form - Fixed that mysqlbinlog --debug works - Fixed create_drop_binlog.test test failure - Reorganized fields in PRINT_EVENT_INFO to be according to size to optimize storage - Don't change print_row_event_position or print_row_counts if set by user - Remove some testing of argument to my_free is 0 - base64-output=never is now supported and works in all context - Updated help information for --base64-output and --short-form - print_row_count is now on by default. Reset automatically if --short-form is used - Removed obsolote warning for mysql 5.6.0 - More DBUG_PRINT for mysqltest.cc - my_b_write_byte() now checks for flush failures. This fixed a memory overrun on disk full - my_b_printf() now returns 1 on failure, 0 on ok. This simplifies code and no old code was using the old return value of my_b_printf(). - my_b_Write_backtick_quote() now returns 1 on failure and 0 on ok - Fixed some error conditions in log printing that was not previously handled. - Slave_rows_error_report() can now handle longlong positions - Write_on_release_cache() rewritten so that we can detect errors on flush. Not depending on automatic release anymore. - Changed types for Pos and End_log_pos to 64 bit in SHOW BINLOG EVENTS - Fixed that copy_event_cache_to_string_and_reinit() works with strings longer than 4G (Changed to use LEX_STRING instead of String) - Restricted binlog_rows_event_max_size to UINT32_MAX-1 as String's are anyway restricted to UINT32_MAX - Fixed bug in rpl_binlog_state::write_to_iocache() which hide write failures (duplicate variable name) - Fixed bug in String::append if original string was not allocated - Stop mysqlbinlog output at once if there is an error. - Before printing error message, flush result file. This ensures that the error message is printed last. (Easier to find)
* | | Merge branch '10.1' into 10.2Sergei Golubchik2017-05-091-1/+0
|\ \ \ | |/ / | | | | | | | | | Revert commit db0917f68f, because the fix for MDEV-12696 is coming from 5.5 and 10.1 in this merge.
| * | Merge branch '10.0' 10.1Sergei Golubchik2017-04-281-1/+0
| |\ \
| | * \ Merge branch '5.5' into 10.0Sergei Golubchik2017-04-211-1/+0
| | |\ \ | | | |/
| | | * Merge remote-tracking branch 'mysql/5.5' into 5.5mariadb-5.5.55Sergei Golubchik2017-04-111-1/+0
| | | |\
| | | | * BUG#25575605: SETTING --SSL-MODE=REQUIRED SENDS CREDENTIALS BEFORE VERIFYING ↵Ramil Kalimullin2017-03-101-9/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SSL CONNECTION MYSQL_OPT_SSL_MODE option introduced. It is set in case of --ssl-mode=REQUIRED and permits only SSL connection. (cherry picked from commit 3b2d28578c526f347f5cfe763681eff365731f99)
* | | | | [MDEV-10570] Add Flashback supportMonty2017-01-201-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ==== Description ==== Flashback can rollback the instances/databases/tables to an old snapshot. It's implement on Server-Level by full image format binary logs (--binlog-row-image=FULL), so it supports all engines. Currently, it’s a feature inside mysqlbinlog tool (with --flashback arguments). Because the flashback binlog events will store in the memory, you should check if there is enough memory in your machine. ==== New Arguments to mysqlbinlog ==== --flashback (-B) It will let mysqlbinlog to work on FLASHBACK mode. ==== New Arguments to mysqld ==== --flashback Setup the server to use flashback. This enables binary log in row mode and will enable extra logging for DDL's needed by flashback feature ==== Example ==== I have a table "t" in database "test", we can compare the output with "--flashback" and without. #client/mysqlbinlog /data/mysqldata_10.0/binlog/mysql-bin.000001 -vv -d test -T t --start-datetime="2013-03-27 14:54:00" > /tmp/1.sql #client/mysqlbinlog /data/mysqldata_10.0/binlog/mysql-bin.000001 -vv -d test -T t --start-datetime="2013-03-27 14:54:00" -B > /tmp/2.sql Then, importing the output flashback file (/tmp/2.log), it can flashback your database/table to the special time (--start-datetime). And if you know the exact postion, "--start-postion" is also works, mysqlbinlog will output the flashback logs that can flashback to "--start-postion" position. ==== Implement ==== 1. As we know, if binlog_format is ROW (binlog-row-image=FULL in 10.1 and later), all columns value are store in the row event, so we can get the data before mis-operation. 2. Just do following things: 2.1 Change Event Type, INSERT->DELETE, DELETE->INSERT. For example: INSERT INTO t VALUES (...) ---> DELETE FROM t WHERE ... DELETE FROM t ... ---> INSERT INTO t VALUES (...) 2.2 For Update_Event, swapping the SET part and WHERE part. For example: UPDATE t SET cols1 = vals1 WHERE cols2 = vals2 ---> UPDATE t SET cols2 = vals2 WHERE cols1 = vals1 2.3 For Multi-Rows Event, reverse the rows sequence, from the last row to the first row. For example: DELETE FROM t WHERE id=1; DELETE FROM t WHERE id=2; ...; DELETE FROM t WHERE id=n; ---> DELETE FROM t WHERE id=n; ...; DELETE FROM t WHERE id=2; DELETE FROM t WHERE id=1; 2.4 Output those events from the last one to the first one which mis-operation happened. For example:
* | | | | MDEV-9293 - Use MariaDB's Connector/C in serverVladislav Vaintroub2016-08-251-0/+1
| | | | |
* | | | | Revert "MDEV-9293 Connector/C integration"Vladislav Vaintroub2016-08-191-1/+0
| | | | | | | | | | | | | | | | | | | | This reverts commit 7b89b9f5108c80f4f270da922d7e6c182a663719.
* | | | | MDEV-9293 Connector/C integrationVladislav Vaintroub2016-08-191-0/+1
|/ / / /
* | | | Merge branch '10.0' into 10.1Sergei Golubchik2016-05-041-0/+1
|\ \ \ \ | |/ / /
| * | | Merge branch '5.5' into 10.0Sergei Golubchik2016-04-261-0/+1
| |\ \ \ | | |/ /
| | * | Merge branch 'mysql/5.5' into 5.5Sergei Golubchik2016-04-201-0/+1
| | |\ \ | | | |/
| | | * WL#9072: Backport WL#8785 to 5.5Ramil Kalimullin2016-02-191-1/+35
| | | |
| | | * Updated/added copyright headersMurthy Narkedimilli2013-02-261-1/+1
| | | |\
| | | | * Updated/added copyright headersKent Boortz2011-07-031-2/+2
| | | | |\
| | | * | | Bug #12998841: libmysql divulges plaintext password upon request in 5.5Georgi Kodinov2012-07-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Clear text password client plugin disabled by default. 2. Added an environment variable LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN, that when set to something starting with '1', 'Y' or 'y' will enable the clear text plugin for all connections. 3. Added a new mysql_options() option : MYSQL_ENABLE_CLEARTEXT_PLUGIN that takes an my_bool argument. When the value of the argument is non-zero the clear text plugin is enabled for this connection only. 4. Added an enable-cleartext-plugin config file option that takes a numeric argument. If the numeric value of the numeric argument is non-zero the clear text plugin is enabled for the connection 5. Added a boolean command line option "--enable_cleartext_plugin" to mysql, mysqlslap and mysqladmin. When specified it will call mysql_options with the effect of #3 6. Added a new CLEARTEXT option to the connect command in mysqltest. When specified it will enable the cleartext plugin for usage. 7. Added test cases and updated existing ones that need the clear text plugin.
| | | * | | Updated/added copyright headersKent Boortz2011-06-301-2/+4
| | | |\ \ \ | | | | |/ /
| | | | * | Updated/added copyright headersKent Boortz2011-06-301-2/+5
| | | | |\ \
| | | * | \ \ Merging patch for bug#11765157 from mysql-5.1.Nirbhay Choubey2011-04-081-0/+1
| | | |\ \ \ \ | | | | | |_|/ | | | | |/| |
| | | | * | | Bug#11765157 - 58090: mysqlslap drops schema specified inNirbhay Choubey2011-04-081-0/+1
| | | | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | create_schema if auto-generate-sql also set. mysqlslap uses a schema to run its tests on and later drops it if auto-generate-sql is used. This can be a problem, if the schema is an already existing one. If create-schema is used with auto-generate-sql option, mysqlslap while performing the cleanup, drops the specified database. Fixed by introducing an option --no-drop, which, if used, will prevent the dropping of schema at the end of the test.
| | | | * | WL#5182 Remove more deprecated 4.1/5.0 featuresMagne Mahre2010-01-271-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | WL#5182 is a follow-up to WL#5154, deprecating a few more options and system variables.
| | | | * | WL#5154 Remove deprecated 4.1 featuresMagne Mahre2010-01-211-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Several items said to be deprecated in the 4.1 manual have never been removed. This worklog adds deprecation warnings when these items are used, and warns the user that the items will be removed in MySQL 5.6. A couple of previously deprecation decision have been reversed (see single file comments)
| | | * | | Remove last traces of HAVE_NDBCLUSTER_DB define - it has not had an effect ↵Magnus Blåudd2011-02-211-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in a long time and is just confusing. At the same time backport the removal of OPT_NDB_CONNECTSTRING and OPT_NDBCLUSTER values from "enum options_client"
| | | * | | Bug#58139 : default-auth option not recognized in MySQL standardNirbhay Choubey2011-01-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | command line clients. Postfix covering other mysql standard clients like mysql_upgrade, mysqlbinlog, mysqlcheck, mysqlimport, mysqlshow and mysqlslap.
| | | * | | WL#1054: Pluggable authentication supportGeorgi Kodinov2010-08-091-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Merged the implementation to a new base tree.
| | | * | | WL#5486: Remove code for unsupported platformsDavi Arnaut2010-07-151-1/+1
| | | | | | | | | | | | | | | | | | Remove Netware specific code.
| | | * | | WL#5030: Split and remove mysql_priv.hMats Kindahl2010-03-311-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch: - Moves all definitions from the mysql_priv.h file into header files for the component where the variable is defined - Creates header files if the component lacks one - Eliminates all include directives from mysql_priv.h - Eliminates all circular include cycles - Rename time.cc to sql_time.cc - Rename mysql_priv.h to sql_priv.h
| | | * | | Bug#51832 mysql_upgrade failing on performance_schema tables in mysql-trunkAlexander Nozdrin2010-03-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this fix, client tools (mysql_upgrade, mysqlcheck, mysqldump) would try to process performance schema tables, leading to failures. The fix is to align FIRST_PERFORMANCE_SCHEMA_VERSION to 5.5.3, which is the version number of mysql-trunk where the performance schema is first available.
| | | * | | WL#5182 Remove more deprecated 4.1/5.0 featuresMagne Mahre2010-02-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | WL#5154 was a task for formally deprecating and removing items that were mentioned in the manual as having been deprecated since MySQL 4.1 or 5.0, but that had never been removed. Since WL#5154 was created, examination of mysqld.cc, mysql.cc, and mysqldump.c reveals additional deprecations not mentioned in the manual. (In some cases, the items are simply not mentioned in the 5.1+ manuals.) This is a follow-on task to deprecate and remove these additional items. The deprecation happened in MySQL 5.1, and the options/variables are now removed from the code.
| | | * | | WL#5154 Remove deprecated 4.1 featuresMagne Mahre2010-02-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A set of program options and variables was deprecated in MySQL 5.1, and is hereby removed.
| | | * | | WL#2360 Performance schemaMarc Alff2010-01-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Part IV: sql instrumentation
| | | * | | WL#2360 Performance schemaMarc Alff2009-12-091-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | Part III: mysys instrumentation
| | | * | | BUG #8368 "mysqldump needs --slave-data option"Magne Mahre2009-11-041-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added this option, named as "--dump-slave". The purpose of this option is to be able to produce a dump from a slave used for making backups of the master. Originally, dumping from the main master was fine, but as more data accumulated, the dump process would take over 30 minutes, locking up the master database hence website for 30 minutes. A slave dedicated to producing backups was the answer, but I needed a dump that could be used to restore a slave instantly and in order to do that, it has to have three things contained in the dump: 1. "STOP SLAVE;" at the beginning 2. "CHANGE MASTER TO ...<the master - info from 'show slave status'>" 3. "START SLAVE;" at the end These options in this changeset contain this. --stop-slave adds "STOP SLAVE" to the beginning of the dump and "STOP SLAVE" to the end of the dump. --include-host gives the user the option to have the host explicitely added to the "CHANGE MASTER TO ..." line. --dump-slave adds the "CHANGE MASTER ..." to the dump representing not the slave's master binlog info, but the slave's master's info from "SHOW SLAVE STATUS"
| | | * | | Bug#26780: automatic vertical output for wide resultsMagne Mahre2009-11-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Feature from Eric Bergen, CLA signed 2007-06-27. Adds new mysql client option "--auto-vertical-output", which causes the client to test whether a result table is too wide for the current window (where available) and emit vertical results in that case. Otherwise, it sends normal tabular results.
| | | * | | WL#751 Error message construction, backportSergey Glukhov2009-10-151-0/+1
| | | |/ /
| | | * | Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.1mkindahl@dl145h.mysql.com2008-01-311-1/+1
| | | |\ \ | | | | | | | | | | | | | | | | | | into dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl-merge