merge 5.1-> 5.2
This commit is contained in:
commit
08e4635fba
@ -1922,3 +1922,5 @@ libmysqld/examples/mysqltest.cc
|
|||||||
extra/libevent/event-config.h
|
extra/libevent/event-config.h
|
||||||
libmysqld/opt_table_elimination.cc
|
libmysqld/opt_table_elimination.cc
|
||||||
libmysqld/ha_federatedx.cc
|
libmysqld/ha_federatedx.cc
|
||||||
|
tmp
|
||||||
|
libmysqld/debug_sync.cc
|
||||||
|
@ -4,7 +4,7 @@ path=`dirname $0`
|
|||||||
. "$path/SETUP.sh"
|
. "$path/SETUP.sh"
|
||||||
|
|
||||||
extra_flags="$pentium_cflags $fast_cflags"
|
extra_flags="$pentium_cflags $fast_cflags"
|
||||||
extra_configs="$pentium_configs $static_link"
|
extra_configs="$pentium_configs"
|
||||||
strip=yes
|
strip=yes
|
||||||
|
|
||||||
. "$path/FINISH.sh"
|
. "$path/FINISH.sh"
|
||||||
|
@ -66,6 +66,12 @@ IF(EXTRA_DEBUG)
|
|||||||
ADD_DEFINITIONS(-D EXTRA_DEBUG)
|
ADD_DEFINITIONS(-D EXTRA_DEBUG)
|
||||||
ENDIF(EXTRA_DEBUG)
|
ENDIF(EXTRA_DEBUG)
|
||||||
|
|
||||||
|
IF(ENABLED_DEBUG_SYNC)
|
||||||
|
ADD_DEFINITIONS(-D ENABLED_DEBUG_SYNC)
|
||||||
|
ENDIF(ENABLED_DEBUG_SYNC)
|
||||||
|
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DENABLED_DEBUG_SYNC")
|
||||||
|
SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DENABLED_DEBUG_SYNC")
|
||||||
|
|
||||||
# in some places we use DBUG_OFF
|
# in some places we use DBUG_OFF
|
||||||
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DDBUG_OFF")
|
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DDBUG_OFF")
|
||||||
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -DDBUG_OFF")
|
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -DDBUG_OFF")
|
||||||
@ -211,12 +217,16 @@ ENDIF(WITHOUT_DYNAMIC_PLUGINS)
|
|||||||
FILE(GLOB STORAGE_SUBDIRS storage/*)
|
FILE(GLOB STORAGE_SUBDIRS storage/*)
|
||||||
FOREACH(SUBDIR ${STORAGE_SUBDIRS})
|
FOREACH(SUBDIR ${STORAGE_SUBDIRS})
|
||||||
FILE(RELATIVE_PATH DIRNAME ${PROJECT_SOURCE_DIR}/storage ${SUBDIR})
|
FILE(RELATIVE_PATH DIRNAME ${PROJECT_SOURCE_DIR}/storage ${SUBDIR})
|
||||||
STRING(TOUPPER ${DIRNAME} ENGINE)
|
|
||||||
STRING(TOLOWER ${DIRNAME} ENGINE_LOWER)
|
|
||||||
IF (EXISTS ${SUBDIR}/CMakeLists.txt)
|
IF (EXISTS ${SUBDIR}/CMakeLists.txt)
|
||||||
# Check MYSQL_STORAGE_ENGINE macro is present
|
# Check MYSQL_STORAGE_ENGINE macro is present
|
||||||
FILE(STRINGS ${SUBDIR}/CMakeLists.txt HAVE_STORAGE_ENGINE REGEX MYSQL_STORAGE_ENGINE)
|
FILE(STRINGS ${SUBDIR}/CMakeLists.txt HAVE_STORAGE_ENGINE REGEX MYSQL_STORAGE_ENGINE)
|
||||||
IF(HAVE_STORAGE_ENGINE)
|
IF(HAVE_STORAGE_ENGINE)
|
||||||
|
# Extract name of engine from HAVE_STORAGE_ENGINE
|
||||||
|
STRING(REGEX REPLACE ".*MYSQL_STORAGE_ENGINE\\((.*\)\\).*"
|
||||||
|
"\\1" ENGINE_NAME ${HAVE_STORAGE_ENGINE})
|
||||||
|
STRING(TOUPPER ${ENGINE_NAME} ENGINE)
|
||||||
|
STRING(TOLOWER ${ENGINE_NAME} ENGINE_LOWER)
|
||||||
|
|
||||||
SET(ENGINE_BUILD_TYPE "DYNAMIC")
|
SET(ENGINE_BUILD_TYPE "DYNAMIC")
|
||||||
# Read plug.in to find out if a plugin is mandatory and whether it supports
|
# Read plug.in to find out if a plugin is mandatory and whether it supports
|
||||||
# build as shared library (dynamic).
|
# build as shared library (dynamic).
|
||||||
@ -254,6 +264,7 @@ FOREACH(SUBDIR ${STORAGE_SUBDIRS})
|
|||||||
SET (MYSQLD_STATIC_ENGINE_LIBS ${MYSQLD_STATIC_ENGINE_LIBS} ${PLUGIN_NAME})
|
SET (MYSQLD_STATIC_ENGINE_LIBS ${MYSQLD_STATIC_ENGINE_LIBS} ${PLUGIN_NAME})
|
||||||
SET (STORAGE_ENGINE_DEFS "${STORAGE_ENGINE_DEFS} -DWITH_${ENGINE}_STORAGE_ENGINE")
|
SET (STORAGE_ENGINE_DEFS "${STORAGE_ENGINE_DEFS} -DWITH_${ENGINE}_STORAGE_ENGINE")
|
||||||
SET (WITH_${ENGINE}_STORAGE_ENGINE TRUE)
|
SET (WITH_${ENGINE}_STORAGE_ENGINE TRUE)
|
||||||
|
SET (${ENGINE}_DIR ${DIRNAME})
|
||||||
ENDIF (ENGINE_BUILD_TYPE STREQUAL "STATIC")
|
ENDIF (ENGINE_BUILD_TYPE STREQUAL "STATIC")
|
||||||
ENDIF(EXISTS ${SUBDIR}/plug.in)
|
ENDIF(EXISTS ${SUBDIR}/plug.in)
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@ describe how to install MariaDB; However all documentation at www.mysql.com
|
|||||||
also applies.
|
also applies.
|
||||||
|
|
||||||
|
|
||||||
2.9. Installing MariaDB from tar.gz Packages on Other Unix-Like Systems
|
2.2. Installing MariaDB from Generic Binaries on Unix/Linux
|
||||||
|
|
||||||
This section covers the installation of MariaDB binary distributions
|
This section covers the installation of MariaDB binary distributions
|
||||||
that are provided for various platforms in the form of compressed
|
that are provided for various platforms in the form of compressed
|
||||||
@ -22,11 +22,13 @@ also applies.
|
|||||||
* A reasonable tar to unpack the distribution. GNU tar is known
|
* A reasonable tar to unpack the distribution. GNU tar is known
|
||||||
to work. Some operating systems come with a preinstalled
|
to work. Some operating systems come with a preinstalled
|
||||||
version of tar that is known to have problems. For example,
|
version of tar that is known to have problems. For example,
|
||||||
the tar provided with early versions of Mac OS X, SunOS 4.x
|
the tar provided with early versions of Mac OS X, SunOS 4.x,
|
||||||
and Solaris 8 and earlier are known to have problems with long
|
Solaris 8, Solaris 9, Solaris 10 and OpenSolaris, and HP-UX
|
||||||
file names. On Mac OS X, you can use the preinstalled gnutar
|
are known to have problems with long file names. On Mac OS X,
|
||||||
program. On other systems with a deficient tar, you should
|
you can use the preinstalled gnutar program. On Solaris 10 and
|
||||||
install GNU tar first.
|
OpenSolaris you can use the preinstalled gtar. On other
|
||||||
|
systems with a deficient tar, you should install GNU tar
|
||||||
|
first.
|
||||||
|
|
||||||
If you run into problems and need to file a bug report,
|
If you run into problems and need to file a bug report,
|
||||||
please report them to: http://bugs.launchpad.net/maria
|
please report them to: http://bugs.launchpad.net/maria
|
||||||
@ -52,7 +54,7 @@ shell> bin/mysqld_safe --user=mysql &
|
|||||||
Note
|
Note
|
||||||
|
|
||||||
This procedure does not set up any passwords for MariaDB accounts.
|
This procedure does not set up any passwords for MariaDB accounts.
|
||||||
After following the procedure, proceed to Section 2.11,
|
After following the procedure, proceed to Section 2.13,
|
||||||
"Post-Installation Setup and Testing."
|
"Post-Installation Setup and Testing."
|
||||||
|
|
||||||
A more detailed version of the preceding description for
|
A more detailed version of the preceding description for
|
||||||
@ -147,7 +149,7 @@ shell> chown -R mysql data
|
|||||||
machine, you can copy support-files/mysql.server to the
|
machine, you can copy support-files/mysql.server to the
|
||||||
location where your system has its startup files. More
|
location where your system has its startup files. More
|
||||||
information can be found in the support-files/mysql.server
|
information can be found in the support-files/mysql.server
|
||||||
script itself and in Section 2.11.2.2, "Starting and Stopping
|
script itself and in Section 2.13.1.2, "Starting and Stopping
|
||||||
MariaDB Automatically."
|
MariaDB Automatically."
|
||||||
10. You can set up new accounts using the bin/mysql_setpermission
|
10. You can set up new accounts using the bin/mysql_setpermission
|
||||||
script if you install the DBI and DBD::mysql Perl modules. See
|
script if you install the DBI and DBD::mysql Perl modules. See
|
||||||
@ -186,5 +188,5 @@ Note
|
|||||||
|
|
||||||
The accounts that are listed in the MariaDB grant tables initially
|
The accounts that are listed in the MariaDB grant tables initially
|
||||||
have no passwords. After starting the server, you should set up
|
have no passwords. After starting the server, you should set up
|
||||||
passwords for them using the instructions in Section 2.11,
|
passwords for them using the instructions in Section 2.13,
|
||||||
"Post-Installation Setup and Testing."
|
"Post-Installation Setup and Testing."
|
||||||
|
10609
INSTALL-SOURCE
10609
INSTALL-SOURCE
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
2.10.6. Installing MySQL from Source on Windows
|
2.5.10. Installing MySQL from Source on Windows
|
||||||
|
|
||||||
These instructions describe how to build binaries from source for
|
These instructions describe how to build binaries from source for
|
||||||
MySQL 5.1 on Windows. Instructions are provided for building
|
MySQL 5.1 on Windows. Instructions are provided for building
|
||||||
@ -15,7 +15,7 @@ Note
|
|||||||
to use precompiled binary distributions of MySQL that are built
|
to use precompiled binary distributions of MySQL that are built
|
||||||
specifically for optimal performance on Windows by Sun
|
specifically for optimal performance on Windows by Sun
|
||||||
Microsystems, Inc. Instructions for installing binary
|
Microsystems, Inc. Instructions for installing binary
|
||||||
distributions are available in Section 2.3, "Installing MySQL on
|
distributions are available in Section 2.5, "Installing MySQL on
|
||||||
Windows."
|
Windows."
|
||||||
|
|
||||||
To build MySQL on Windows from source, you must satisfy the
|
To build MySQL on Windows from source, you must satisfy the
|
||||||
@ -68,7 +68,7 @@ Note
|
|||||||
|
|
||||||
* 3GB to 5GB of disk space.
|
* 3GB to 5GB of disk space.
|
||||||
|
|
||||||
The exact system requirements can be found here:
|
The exact system requirements for Visual Studio can be found here:
|
||||||
http://msdn.microsoft.com/vstudio/Previous/2003/sysreqs/default.as
|
http://msdn.microsoft.com/vstudio/Previous/2003/sysreqs/default.as
|
||||||
px and
|
px and
|
||||||
http://msdn.microsoft.com/vstudio/products/sysreqs/default.aspx
|
http://msdn.microsoft.com/vstudio/products/sysreqs/default.aspx
|
||||||
@ -81,7 +81,7 @@ Note
|
|||||||
|
|
||||||
* Package a source distribution yourself from the latest Bazaar
|
* Package a source distribution yourself from the latest Bazaar
|
||||||
developer source tree. For instructions on pulling the latest
|
developer source tree. For instructions on pulling the latest
|
||||||
source files, see Section 2.10.3, "Installing from the
|
source files, see Section 2.3.3, "Installing from the
|
||||||
Development Source Tree."
|
Development Source Tree."
|
||||||
|
|
||||||
If you find something not working as expected, or you have
|
If you find something not working as expected, or you have
|
||||||
@ -89,7 +89,7 @@ Note
|
|||||||
Windows, please send a message to the win32 mailing list. See
|
Windows, please send a message to the win32 mailing list. See
|
||||||
Section 1.5.1, "MySQL Mailing Lists."
|
Section 1.5.1, "MySQL Mailing Lists."
|
||||||
|
|
||||||
2.10.6.1. Building MySQL from Source Using CMake and Visual Studio
|
2.5.10.1. Building MySQL from Source Using CMake and Visual Studio
|
||||||
|
|
||||||
You can build MySQL on Windows by using a combination of cmake and
|
You can build MySQL on Windows by using a combination of cmake and
|
||||||
Microsoft Visual Studio .NET 2003 (7.1), Microsoft Visual Studio
|
Microsoft Visual Studio .NET 2003 (7.1), Microsoft Visual Studio
|
||||||
@ -99,7 +99,7 @@ Note
|
|||||||
Note
|
Note
|
||||||
|
|
||||||
To compile from the source code on Windows you must use the
|
To compile from the source code on Windows you must use the
|
||||||
standard source distribution (for example, mysql-5.0.45.tar.gz).
|
standard source distribution (for example, mysql-5.1.41.tar.gz).
|
||||||
You build from the same distribution as used to build MySQL on
|
You build from the same distribution as used to build MySQL on
|
||||||
Unix, Linux and other platforms. Do not use the Windows Source
|
Unix, Linux and other platforms. Do not use the Windows Source
|
||||||
distributions as they do not contain the necessary configuration
|
distributions as they do not contain the necessary configuration
|
||||||
@ -264,5 +264,5 @@ C:\workdir> copy libmysql\libmysql.def C:\mysql\include
|
|||||||
C:\workdir> xcopy sql-bench\*.* C:\mysql\bench /E
|
C:\workdir> xcopy sql-bench\*.* C:\mysql\bench /E
|
||||||
|
|
||||||
After installation, set up and start the server in the same way as
|
After installation, set up and start the server in the same way as
|
||||||
for binary Windows distributions. See Section 2.3, "Installing
|
for binary Windows distributions. See Section 2.5, "Installing
|
||||||
MySQL on Windows."
|
MySQL on Windows."
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Copyright 2000-2008 MySQL AB, 2008 Sun Microsystems, Inc.
|
# Copyright 2000-2008 MySQL AB, 2009 Sun Microsystems, Inc.
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# This program is free software; you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU General Public License as published by
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -26,7 +26,7 @@ EXTRA_DIST = INSTALL-SOURCE INSTALL-WIN-SOURCE \
|
|||||||
SUBDIRS = . include @docs_dirs@ @zlib_dir@ \
|
SUBDIRS = . include @docs_dirs@ @zlib_dir@ \
|
||||||
@readline_topdir@ sql-common scripts \
|
@readline_topdir@ sql-common scripts \
|
||||||
@pstack_dir@ \
|
@pstack_dir@ \
|
||||||
@sql_union_dirs@ unittest storage plugin \
|
@sql_union_dirs@ storage \
|
||||||
@sql_server@ @man_dirs@ tests \
|
@sql_server@ @man_dirs@ tests \
|
||||||
netware @libmysqld_dirs@ \
|
netware @libmysqld_dirs@ \
|
||||||
mysql-test support-files sql-bench @tools_dirs@ \
|
mysql-test support-files sql-bench @tools_dirs@ \
|
||||||
@ -208,6 +208,10 @@ test-bt-fast:
|
|||||||
-cd mysql-test ; MTR_BUILD_THREAD=auto \
|
-cd mysql-test ; MTR_BUILD_THREAD=auto \
|
||||||
@PERL@ ./mysql-test-run.pl $(MTR_EXTRA_OPTIONS) --force --comment=stress --suite=stress
|
@PERL@ ./mysql-test-run.pl $(MTR_EXTRA_OPTIONS) --force --comment=stress --suite=stress
|
||||||
|
|
||||||
|
test-bt-fast2:
|
||||||
|
-cd mysql-test ; MTR_BUILD_THREAD=auto \
|
||||||
|
@PERL@ ./mysql-test-run.pl $(MTR_EXTRA_OPTIONS) --force --comment=ps --ps-protocol --report-features
|
||||||
|
|
||||||
test-bt-debug:
|
test-bt-debug:
|
||||||
-cd mysql-test ; MTR_BUILD_THREAD=auto \
|
-cd mysql-test ; MTR_BUILD_THREAD=auto \
|
||||||
@PERL@ ./mysql-test-run.pl $(MTR_EXTRA_OPTIONS) --comment=debug --force --timer \
|
@PERL@ ./mysql-test-run.pl $(MTR_EXTRA_OPTIONS) --comment=debug --force --timer \
|
||||||
|
71
README
71
README
@ -1,60 +1,57 @@
|
|||||||
This is a release of MariaDB, a branch of MySQL.
|
This is a release of MariaDB.
|
||||||
|
|
||||||
MariaDB is a drop-in replacement of MySQL, with more features, less
|
MariaDB is designed as a drop-in replacement of MySQL(R) with more
|
||||||
bugs and better performance.
|
features, new storage engines, fewer bugs, and better performance.
|
||||||
|
|
||||||
MariaDB is brought to you by many of the original developers of MySQL,
|
MariaDB is brought to you by many of the original developers of MySQL
|
||||||
that now work for Monty Program Ab, and by many people in the
|
who now work for Monty Program Ab, and by many people in the
|
||||||
community.
|
community.
|
||||||
|
|
||||||
MySQL, which is the base of MariaDB, is brought to you by Sun.
|
MySQL, which is the base of MariaDB, is a product and trademark of Sun
|
||||||
|
Microsystems, Inc. For a list of developers and other contributors,
|
||||||
|
see the Credits appendix. You can also do 'SHOW authors' to get a
|
||||||
|
list of active contributors.
|
||||||
|
|
||||||
License information can be found in these files:
|
A description of the MariaDB project and a manual can be found at:
|
||||||
- For GPL (free) distributions, see the COPYING file and
|
|
||||||
the EXCEPTIONS-CLIENT file.
|
|
||||||
|
|
||||||
A description of the MariaDB project can be found at:
|
|
||||||
http://askmonty.org/wiki/index.php/MariaDB
|
http://askmonty.org/wiki/index.php/MariaDB
|
||||||
|
|
||||||
GPLv2 Disclaimer
|
|
||||||
For the avoidance of doubt, except that if any license choice
|
|
||||||
other than GPL or LGPL is available it will apply instead, Sun
|
|
||||||
elects to use only the General Public License version 2 (GPLv2)
|
|
||||||
at this time for any software where a choice of GPL license versions
|
|
||||||
is made available with the language indicating that GPLv2 or any
|
|
||||||
later version may be used, or where a choice of which version of
|
|
||||||
the GPL is applied is otherwise unspecified.
|
|
||||||
|
|
||||||
The differences between MariaDB and MySQL can be found at:
|
|
||||||
http://askmonty.org/wiki/index.php/MariaDB_versus_MySQL
|
http://askmonty.org/wiki/index.php/MariaDB_versus_MySQL
|
||||||
|
http://askmonty.org/wiki/index.php/Manual:Contents
|
||||||
|
|
||||||
Documentation about MySQL can be found at:
|
As MariaDB is a full replacement of MySQL, the MySQL manual at
|
||||||
http://dev.mysql.com/doc
|
http://dev.mysql.com/doc is generally applicable.
|
||||||
|
|
||||||
For further information about MySQL documentation, see:
|
More help is available from the Maria Discuss mailing list
|
||||||
- The current MySQL documentation:
|
https://launchpad.net/~maria-discuss
|
||||||
|
and the #maria IRC channel on Freenode.
|
||||||
|
|
||||||
Some manual sections of special interest:
|
***************************************************************************
|
||||||
|
|
||||||
|
NOTE:
|
||||||
|
|
||||||
|
MariaDB is specifically available only under version 2 of the GNU
|
||||||
|
General Public License (GPLv2). (I.e. Without the "any later version"
|
||||||
|
clause.) This is inherited from MySQL. Please see the README file in
|
||||||
|
the MySQL distribution for more information.
|
||||||
|
|
||||||
- For a list of developers and other contributors, see the Credits
|
License information can be found in the COPYING file and the
|
||||||
appendix.
|
EXCEPTIONS-CLIENT file.
|
||||||
|
|
||||||
A local copy of the MySQL Reference Manual can be found in the Docs
|
***************************************************************************
|
||||||
directory in GNU Info format. You can also browse the manual online or
|
|
||||||
download it in any of several formats from
|
|
||||||
http://dev.mysql.com/doc
|
|
||||||
|
|
||||||
************************************************************
|
|
||||||
|
|
||||||
IMPORTANT:
|
IMPORTANT:
|
||||||
|
|
||||||
Bug or error reports regarding MariaDB should be sent to
|
Bug and/or error reports regarding MariaDB should be submitted at
|
||||||
https://bugs.launchpad.net/maria
|
https://bugs.launchpad.net/maria
|
||||||
Bugs in the MySQL code can also be sent to http://bugs.mysql.com
|
|
||||||
|
Bugs in the MySQL code can also be submitted at http://bugs.mysql.com
|
||||||
|
|
||||||
***************************************************************************
|
***************************************************************************
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
***************************************************************************
|
||||||
%%The following software may be included in this product:
|
%%The following software may be included in this product:
|
||||||
Fred Fish's Dbug Library
|
Fred Fish's Dbug Library
|
||||||
|
|
||||||
|
@ -83,7 +83,7 @@ extern "C" {
|
|||||||
#include <term.h>
|
#include <term.h>
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif /* defined(HAVE_CURSES_H) && defined(HAVE_TERM_H) */
|
||||||
|
|
||||||
#undef bcmp // Fix problem with new readline
|
#undef bcmp // Fix problem with new readline
|
||||||
#if defined(__WIN__)
|
#if defined(__WIN__)
|
||||||
@ -92,7 +92,6 @@ extern "C" {
|
|||||||
#include <readline/readline.h>
|
#include <readline/readline.h>
|
||||||
#define HAVE_READLINE
|
#define HAVE_READLINE
|
||||||
#endif
|
#endif
|
||||||
//int vidattr(long unsigned int attrs); // Was missing in sun curses
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(HAVE_VIDATTR)
|
#if !defined(HAVE_VIDATTR)
|
||||||
@ -1024,7 +1023,7 @@ static const char *load_default_groups[]= { "mysql","client",0 };
|
|||||||
static int embedded_server_arg_count= 0;
|
static int embedded_server_arg_count= 0;
|
||||||
static char *embedded_server_args[MAX_SERVER_ARGS];
|
static char *embedded_server_args[MAX_SERVER_ARGS];
|
||||||
static const char *embedded_server_groups[]=
|
static const char *embedded_server_groups[]=
|
||||||
{ "server", "embedded", "mysql_SERVER", 0 };
|
{ "server", "embedded", "mysql_SERVER", "mariadb_SERVER", 0 };
|
||||||
|
|
||||||
#ifdef HAVE_READLINE
|
#ifdef HAVE_READLINE
|
||||||
/*
|
/*
|
||||||
@ -1281,21 +1280,35 @@ sig_handler handle_sigint(int sig)
|
|||||||
MYSQL *kill_mysql= NULL;
|
MYSQL *kill_mysql= NULL;
|
||||||
|
|
||||||
/* terminate if no query being executed, or we already tried interrupting */
|
/* terminate if no query being executed, or we already tried interrupting */
|
||||||
if (!executing_query || interrupted_query)
|
/* terminate if no query being executed, or we already tried interrupting */
|
||||||
|
if (!executing_query || (interrupted_query == 2))
|
||||||
|
{
|
||||||
|
tee_fprintf(stdout, "Ctrl-C -- exit!\n");
|
||||||
goto err;
|
goto err;
|
||||||
|
}
|
||||||
|
|
||||||
kill_mysql= mysql_init(kill_mysql);
|
kill_mysql= mysql_init(kill_mysql);
|
||||||
if (!mysql_real_connect(kill_mysql,current_host, current_user, opt_password,
|
if (!mysql_real_connect(kill_mysql,current_host, current_user, opt_password,
|
||||||
"", opt_mysql_port, opt_mysql_unix_port,0))
|
"", opt_mysql_port, opt_mysql_unix_port,0))
|
||||||
|
{
|
||||||
|
tee_fprintf(stdout, "Ctrl-C -- sorry, cannot connect to server to kill query, giving up ...\n");
|
||||||
goto err;
|
goto err;
|
||||||
|
}
|
||||||
|
|
||||||
|
interrupted_query++;
|
||||||
|
|
||||||
|
/* mysqld < 5 does not understand KILL QUERY, skip to KILL CONNECTION */
|
||||||
|
if ((interrupted_query == 1) && (mysql_get_server_version(&mysql) < 50000))
|
||||||
|
interrupted_query= 2;
|
||||||
|
|
||||||
/* kill_buffer is always big enough because max length of %lu is 15 */
|
/* kill_buffer is always big enough because max length of %lu is 15 */
|
||||||
sprintf(kill_buffer, "KILL /*!50000 QUERY */ %lu", mysql_thread_id(&mysql));
|
sprintf(kill_buffer, "KILL %s%lu",
|
||||||
mysql_real_query(kill_mysql, kill_buffer, strlen(kill_buffer));
|
(interrupted_query == 1) ? "QUERY " : "",
|
||||||
|
mysql_thread_id(&mysql));
|
||||||
|
tee_fprintf(stdout, "Ctrl-C -- sending \"%s\" to server ...\n", kill_buffer);
|
||||||
|
mysql_real_query(kill_mysql, kill_buffer, (uint) strlen(kill_buffer));
|
||||||
mysql_close(kill_mysql);
|
mysql_close(kill_mysql);
|
||||||
tee_fprintf(stdout, "Query aborted by Ctrl+C\n");
|
tee_fprintf(stdout, "Ctrl-C -- query aborted.\n");
|
||||||
|
|
||||||
interrupted_query= 1;
|
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@ -2873,7 +2886,7 @@ com_help(String *buffer __attribute__((unused)),
|
|||||||
"For developer information, including the MySQL Reference Manual, "
|
"For developer information, including the MySQL Reference Manual, "
|
||||||
"visit:\n"
|
"visit:\n"
|
||||||
" http://dev.mysql.com/\n"
|
" http://dev.mysql.com/\n"
|
||||||
"To buy MySQL Network Support, training, or other products, visit:\n"
|
"To buy MySQL Enterprise support, training, or other products, visit:\n"
|
||||||
" https://shop.mysql.com/\n", INFO_INFO);
|
" https://shop.mysql.com/\n", INFO_INFO);
|
||||||
put_info("List of all MySQL commands:", INFO_INFO);
|
put_info("List of all MySQL commands:", INFO_INFO);
|
||||||
if (!named_cmds)
|
if (!named_cmds)
|
||||||
|
@ -54,6 +54,8 @@ static char **defaults_argv;
|
|||||||
|
|
||||||
static my_bool not_used; /* Can't use GET_BOOL without a value pointer */
|
static my_bool not_used; /* Can't use GET_BOOL without a value pointer */
|
||||||
|
|
||||||
|
static my_bool opt_write_binlog;
|
||||||
|
|
||||||
#include <help_start.h>
|
#include <help_start.h>
|
||||||
|
|
||||||
static struct my_option my_long_options[]=
|
static struct my_option my_long_options[]=
|
||||||
@ -124,6 +126,11 @@ static struct my_option my_long_options[]=
|
|||||||
{"verbose", 'v', "Display more output about the process",
|
{"verbose", 'v', "Display more output about the process",
|
||||||
(uchar**) &opt_verbose, (uchar**) &opt_verbose, 0,
|
(uchar**) &opt_verbose, (uchar**) &opt_verbose, 0,
|
||||||
GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0},
|
GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0},
|
||||||
|
{"write-binlog", OPT_WRITE_BINLOG,
|
||||||
|
"All commands including mysqlcheck are binlogged. Enabled by default;"
|
||||||
|
"use --skip-write-binlog when commands should not be sent to replication slaves.",
|
||||||
|
(uchar**) &opt_write_binlog, (uchar**) &opt_write_binlog, 0, GET_BOOL, NO_ARG,
|
||||||
|
1, 0, 0, 0, 0, 0},
|
||||||
{0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}
|
{0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -448,6 +455,8 @@ static int run_query(const char *query, DYNAMIC_STRING *ds_res,
|
|||||||
int ret;
|
int ret;
|
||||||
File fd;
|
File fd;
|
||||||
char query_file_path[FN_REFLEN];
|
char query_file_path[FN_REFLEN];
|
||||||
|
const uchar sql_log_bin[]= "SET SQL_LOG_BIN=0;";
|
||||||
|
|
||||||
DBUG_ENTER("run_query");
|
DBUG_ENTER("run_query");
|
||||||
DBUG_PRINT("enter", ("query: %s", query));
|
DBUG_PRINT("enter", ("query: %s", query));
|
||||||
if ((fd= create_temp_file(query_file_path, opt_tmpdir,
|
if ((fd= create_temp_file(query_file_path, opt_tmpdir,
|
||||||
@ -455,6 +464,22 @@ static int run_query(const char *query, DYNAMIC_STRING *ds_res,
|
|||||||
MYF(MY_WME))) < 0)
|
MYF(MY_WME))) < 0)
|
||||||
die("Failed to create temporary file for defaults");
|
die("Failed to create temporary file for defaults");
|
||||||
|
|
||||||
|
/*
|
||||||
|
Master and slave should be upgraded separately. All statements executed
|
||||||
|
by mysql_upgrade will not be binlogged.
|
||||||
|
'SET SQL_LOG_BIN=0' is executed before any other statements.
|
||||||
|
*/
|
||||||
|
if (!opt_write_binlog)
|
||||||
|
{
|
||||||
|
if (my_write(fd, sql_log_bin, sizeof(sql_log_bin)-1,
|
||||||
|
MYF(MY_FNABP | MY_WME)))
|
||||||
|
{
|
||||||
|
my_close(fd, MYF(0));
|
||||||
|
my_delete(query_file_path, MYF(0));
|
||||||
|
die("Failed to write to '%s'", query_file_path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (my_write(fd, (uchar*) query, strlen(query),
|
if (my_write(fd, (uchar*) query, strlen(query),
|
||||||
MYF(MY_FNABP | MY_WME)))
|
MYF(MY_FNABP | MY_WME)))
|
||||||
{
|
{
|
||||||
@ -552,7 +577,6 @@ static int upgrade_already_done(void)
|
|||||||
FILE *in;
|
FILE *in;
|
||||||
char upgrade_info_file[FN_REFLEN]= {0};
|
char upgrade_info_file[FN_REFLEN]= {0};
|
||||||
char buf[sizeof(MYSQL_SERVER_VERSION)+1];
|
char buf[sizeof(MYSQL_SERVER_VERSION)+1];
|
||||||
char *res;
|
|
||||||
|
|
||||||
if (get_upgrade_info_file_name(upgrade_info_file))
|
if (get_upgrade_info_file_name(upgrade_info_file))
|
||||||
return 0; /* Could not get filename => not sure */
|
return 0; /* Could not get filename => not sure */
|
||||||
@ -647,6 +671,7 @@ static int run_mysqlcheck_upgrade(void)
|
|||||||
"--check-upgrade",
|
"--check-upgrade",
|
||||||
"--all-databases",
|
"--all-databases",
|
||||||
"--auto-repair",
|
"--auto-repair",
|
||||||
|
opt_write_binlog ? "--write-binlog" : "--skip-write-binlog",
|
||||||
NULL);
|
NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -661,6 +686,7 @@ static int run_mysqlcheck_fixnames(void)
|
|||||||
"--all-databases",
|
"--all-databases",
|
||||||
"--fix-db-names",
|
"--fix-db-names",
|
||||||
"--fix-table-names",
|
"--fix-table-names",
|
||||||
|
opt_write_binlog ? "--write-binlog" : "--skip-write-binlog",
|
||||||
NULL);
|
NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -87,6 +87,9 @@ static const char* host = 0;
|
|||||||
static int port= 0;
|
static int port= 0;
|
||||||
static uint my_end_arg;
|
static uint my_end_arg;
|
||||||
static const char* sock= 0;
|
static const char* sock= 0;
|
||||||
|
#ifdef HAVE_SMEM
|
||||||
|
static char *shared_memory_base_name= 0;
|
||||||
|
#endif
|
||||||
static const char* user = 0;
|
static const char* user = 0;
|
||||||
static char* pass = 0;
|
static char* pass = 0;
|
||||||
static char *charset= 0;
|
static char *charset= 0;
|
||||||
@ -773,7 +776,10 @@ Exit_status process_event(PRINT_EVENT_INFO *print_event_info, Log_event *ev,
|
|||||||
case QUERY_EVENT:
|
case QUERY_EVENT:
|
||||||
{
|
{
|
||||||
Query_log_event *qe= (Query_log_event*)ev;
|
Query_log_event *qe= (Query_log_event*)ev;
|
||||||
if (shall_skip_database(qe->db))
|
if (strncmp(qe->query, "BEGIN", 5) &&
|
||||||
|
strncmp(qe->query, "COMMIT", 6) &&
|
||||||
|
strncmp(qe->query, "ROLLBACK", 8) &&
|
||||||
|
shall_skip_database(qe->db))
|
||||||
goto end;
|
goto end;
|
||||||
print_use_stmt(print_event_info, qe->db, qe->db_len);
|
print_use_stmt(print_event_info, qe->db, qe->db_len);
|
||||||
if (opt_base64_output_mode == BASE64_OUTPUT_ALWAYS)
|
if (opt_base64_output_mode == BASE64_OUTPUT_ALWAYS)
|
||||||
@ -1048,13 +1054,13 @@ static struct my_option my_long_options[] =
|
|||||||
/* 'unspec' is not mentioned because it is just a placeholder. */
|
/* 'unspec' is not mentioned because it is just a placeholder. */
|
||||||
"Determine when the output statements should be base64-encoded BINLOG "
|
"Determine when the output statements should be base64-encoded BINLOG "
|
||||||
"statements: 'never' disables it and works only for binlogs without "
|
"statements: 'never' disables it and works only for binlogs without "
|
||||||
"row-based events; 'auto' is the default and prints base64 only when "
|
"row-based events; 'decode-rows' decodes row events into commented SQL "
|
||||||
"necessary (i.e., for row-based events and format description events); "
|
"statements if the --verbose option is also given; 'auto' prints base64 "
|
||||||
"'decode-rows' suppresses BINLOG statements for row events, but does "
|
"only when necessary (i.e., for row-based events and format description "
|
||||||
"not exit as an error if a row event is found, unlike 'never'; "
|
"events); 'always' prints base64 whenever possible. 'always' is for "
|
||||||
"'always' prints base64 whenever possible. 'always' is for debugging "
|
"debugging only and should not be used in a production system. If this "
|
||||||
"only and should not be used in a production system. The default is "
|
"argument is not given, the default is 'auto'; if it is given with no "
|
||||||
"'auto'. --base64-output is a short form for --base64-output=always."
|
"argument, 'always' is used."
|
||||||
,(uchar**) &opt_base64_output_mode_str,
|
,(uchar**) &opt_base64_output_mode_str,
|
||||||
(uchar**) &opt_base64_output_mode_str,
|
(uchar**) &opt_base64_output_mode_str,
|
||||||
0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0},
|
0, GET_STR, OPT_ARG, 0, 0, 0, 0, 0, 0},
|
||||||
@ -1133,6 +1139,12 @@ static struct my_option my_long_options[] =
|
|||||||
{"set-charset", OPT_SET_CHARSET,
|
{"set-charset", OPT_SET_CHARSET,
|
||||||
"Add 'SET NAMES character_set' to the output.", (uchar**) &charset,
|
"Add 'SET NAMES character_set' to the output.", (uchar**) &charset,
|
||||||
(uchar**) &charset, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
(uchar**) &charset, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
||||||
|
#ifdef HAVE_SMEM
|
||||||
|
{"shared-memory-base-name", OPT_SHARED_MEMORY_BASE_NAME,
|
||||||
|
"Base name of shared memory.", (uchar**) &shared_memory_base_name,
|
||||||
|
(uchar**) &shared_memory_base_name,
|
||||||
|
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
||||||
|
#endif
|
||||||
{"short-form", 's', "Just show regular queries: no extra info and no "
|
{"short-form", 's', "Just show regular queries: no extra info and no "
|
||||||
"row-based events. This is for testing only, and should not be used in "
|
"row-based events. This is for testing only, and should not be used in "
|
||||||
"production systems. If you want to suppress base64-output, consider "
|
"production systems. If you want to suppress base64-output, consider "
|
||||||
@ -1486,6 +1498,11 @@ static Exit_status safe_connect()
|
|||||||
|
|
||||||
if (opt_protocol)
|
if (opt_protocol)
|
||||||
mysql_options(mysql, MYSQL_OPT_PROTOCOL, (char*) &opt_protocol);
|
mysql_options(mysql, MYSQL_OPT_PROTOCOL, (char*) &opt_protocol);
|
||||||
|
#ifdef HAVE_SMEM
|
||||||
|
if (shared_memory_base_name)
|
||||||
|
mysql_options(mysql, MYSQL_SHARED_MEMORY_BASE_NAME,
|
||||||
|
shared_memory_base_name);
|
||||||
|
#endif
|
||||||
if (!mysql_real_connect(mysql, host, user, pass, 0, port, sock, 0))
|
if (!mysql_real_connect(mysql, host, user, pass, 0, port, sock, 0))
|
||||||
{
|
{
|
||||||
error("Failed on connect: %s", mysql_error(mysql));
|
error("Failed on connect: %s", mysql_error(mysql));
|
||||||
|
@ -652,6 +652,17 @@ static int use_db(char *database)
|
|||||||
return 0;
|
return 0;
|
||||||
} /* use_db */
|
} /* use_db */
|
||||||
|
|
||||||
|
static int disable_binlog()
|
||||||
|
{
|
||||||
|
const char *stmt= "SET SQL_LOG_BIN=0";
|
||||||
|
if (mysql_query(sock, stmt))
|
||||||
|
{
|
||||||
|
fprintf(stderr, "Failed to %s\n", stmt);
|
||||||
|
fprintf(stderr, "Error: %s\n", mysql_error(sock));
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static int handle_request_for_tables(char *tables, uint length)
|
static int handle_request_for_tables(char *tables, uint length)
|
||||||
{
|
{
|
||||||
@ -844,6 +855,14 @@ int main(int argc, char **argv)
|
|||||||
if (dbConnect(current_host, current_user, opt_password))
|
if (dbConnect(current_host, current_user, opt_password))
|
||||||
exit(EX_MYSQLERR);
|
exit(EX_MYSQLERR);
|
||||||
|
|
||||||
|
if (!opt_write_binlog)
|
||||||
|
{
|
||||||
|
if (disable_binlog()) {
|
||||||
|
first_error= 1;
|
||||||
|
goto end;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (opt_auto_repair &&
|
if (opt_auto_repair &&
|
||||||
my_init_dynamic_array(&tables4repair, sizeof(char)*(NAME_LEN*2+2),16,64))
|
my_init_dynamic_array(&tables4repair, sizeof(char)*(NAME_LEN*2+2),16,64))
|
||||||
{
|
{
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 2000-2006 MySQL AB
|
/* Copyright (C) 2000-2006 MySQL AB, 2009 Sun Microsystems, Inc.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -583,7 +583,7 @@ error:
|
|||||||
counter--;
|
counter--;
|
||||||
pthread_cond_signal(&count_threshhold);
|
pthread_cond_signal(&count_threshhold);
|
||||||
pthread_mutex_unlock(&counter_mutex);
|
pthread_mutex_unlock(&counter_mutex);
|
||||||
my_thread_end();
|
mysql_thread_end();
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 2005 MySQL AB
|
/* Copyright (C) 2005 MySQL AB, 2009 Sun Microsystems, Inc.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -423,6 +423,7 @@ void concurrency_loop(MYSQL *mysql, uint current, option_string *eptr)
|
|||||||
stats *sptr;
|
stats *sptr;
|
||||||
conclusions conclusion;
|
conclusions conclusion;
|
||||||
unsigned long long client_limit;
|
unsigned long long client_limit;
|
||||||
|
int sysret;
|
||||||
|
|
||||||
head_sptr= (stats *)my_malloc(sizeof(stats) * iterations,
|
head_sptr= (stats *)my_malloc(sizeof(stats) * iterations,
|
||||||
MYF(MY_ZEROFILL|MY_FAE|MY_WME));
|
MYF(MY_ZEROFILL|MY_FAE|MY_WME));
|
||||||
@ -472,7 +473,10 @@ void concurrency_loop(MYSQL *mysql, uint current, option_string *eptr)
|
|||||||
run_query(mysql, "SET AUTOCOMMIT=0", strlen("SET AUTOCOMMIT=0"));
|
run_query(mysql, "SET AUTOCOMMIT=0", strlen("SET AUTOCOMMIT=0"));
|
||||||
|
|
||||||
if (pre_system)
|
if (pre_system)
|
||||||
if (system(pre_system)) { /* Ignore for now */ }
|
if ((sysret= system(pre_system)) != 0)
|
||||||
|
fprintf(stderr,
|
||||||
|
"Warning: Execution of pre_system option returned %d.\n",
|
||||||
|
sysret);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Pre statements are always run after all other logic so they can
|
Pre statements are always run after all other logic so they can
|
||||||
@ -487,8 +491,10 @@ void concurrency_loop(MYSQL *mysql, uint current, option_string *eptr)
|
|||||||
run_statements(mysql, post_statements);
|
run_statements(mysql, post_statements);
|
||||||
|
|
||||||
if (post_system)
|
if (post_system)
|
||||||
if (system(post_system)) { /* Ignore for now */ }
|
if ((sysret= system(post_system)) != 0)
|
||||||
|
fprintf(stderr,
|
||||||
|
"Warning: Execution of post_system option returned %d.\n",
|
||||||
|
sysret);
|
||||||
/* We are finished with this run */
|
/* We are finished with this run */
|
||||||
if (auto_generate_sql_autoincrement || auto_generate_sql_guid_primary)
|
if (auto_generate_sql_autoincrement || auto_generate_sql_guid_primary)
|
||||||
drop_primary_key_list();
|
drop_primary_key_list();
|
||||||
@ -597,8 +603,8 @@ static struct my_option my_long_options[] =
|
|||||||
(uchar**) &detach_rate, (uchar**) &detach_rate, 0, GET_UINT, REQUIRED_ARG,
|
(uchar**) &detach_rate, (uchar**) &detach_rate, 0, GET_UINT, REQUIRED_ARG,
|
||||||
0, 0, 0, 0, 0, 0},
|
0, 0, 0, 0, 0, 0},
|
||||||
{"engine", 'e', "Comma separated list of storage engines to use for creating the table."
|
{"engine", 'e', "Comma separated list of storage engines to use for creating the table."
|
||||||
"The test is run for each engine. You can also specify an option for an engine"
|
" The test is run for each engine. You can also specify an option for an engine"
|
||||||
"after a `:', like memory:max_row=2300",
|
" after a `:', like memory:max_row=2300",
|
||||||
(uchar**) &default_engine, (uchar**) &default_engine, 0,
|
(uchar**) &default_engine, (uchar**) &default_engine, 0,
|
||||||
GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
||||||
{"host", 'h', "Connect to host.", (uchar**) &host, (uchar**) &host, 0, GET_STR,
|
{"host", 'h', "Connect to host.", (uchar**) &host, (uchar**) &host, 0, GET_STR,
|
||||||
@ -1942,7 +1948,7 @@ end:
|
|||||||
if (!opt_only_print)
|
if (!opt_only_print)
|
||||||
mysql_close(mysql);
|
mysql_close(mysql);
|
||||||
|
|
||||||
my_thread_end();
|
mysql_thread_end();
|
||||||
|
|
||||||
pthread_mutex_lock(&counter_mutex);
|
pthread_mutex_lock(&counter_mutex);
|
||||||
thread_counter--;
|
thread_counter--;
|
||||||
|
@ -82,6 +82,9 @@ enum {
|
|||||||
static int record= 0, opt_sleep= -1;
|
static int record= 0, opt_sleep= -1;
|
||||||
static char *opt_db= 0, *opt_pass= 0;
|
static char *opt_db= 0, *opt_pass= 0;
|
||||||
const char *opt_user= 0, *opt_host= 0, *unix_sock= 0, *opt_basedir= "./";
|
const char *opt_user= 0, *opt_host= 0, *unix_sock= 0, *opt_basedir= "./";
|
||||||
|
#ifdef HAVE_SMEM
|
||||||
|
static char *shared_memory_base_name=0;
|
||||||
|
#endif
|
||||||
const char *opt_logdir= "";
|
const char *opt_logdir= "";
|
||||||
const char *opt_include= 0, *opt_charsets_dir;
|
const char *opt_include= 0, *opt_charsets_dir;
|
||||||
static int opt_port= 0;
|
static int opt_port= 0;
|
||||||
@ -429,6 +432,7 @@ static struct st_expected_errors saved_expected_errors;
|
|||||||
struct st_command
|
struct st_command
|
||||||
{
|
{
|
||||||
char *query, *query_buf,*first_argument,*last_argument,*end;
|
char *query, *query_buf,*first_argument,*last_argument,*end;
|
||||||
|
DYNAMIC_STRING content;
|
||||||
int first_word_len, query_len;
|
int first_word_len, query_len;
|
||||||
my_bool abort_on_error;
|
my_bool abort_on_error;
|
||||||
struct st_expected_errors expected_errors;
|
struct st_expected_errors expected_errors;
|
||||||
@ -1152,6 +1156,8 @@ void free_used_memory()
|
|||||||
{
|
{
|
||||||
struct st_command **q= dynamic_element(&q_lines, i, struct st_command**);
|
struct st_command **q= dynamic_element(&q_lines, i, struct st_command**);
|
||||||
my_free((*q)->query_buf,MYF(MY_ALLOW_ZERO_PTR));
|
my_free((*q)->query_buf,MYF(MY_ALLOW_ZERO_PTR));
|
||||||
|
if ((*q)->content.str)
|
||||||
|
dynstr_free(&(*q)->content);
|
||||||
my_free((*q),MYF(0));
|
my_free((*q),MYF(0));
|
||||||
}
|
}
|
||||||
for (i= 0; i < 10; i++)
|
for (i= 0; i < 10; i++)
|
||||||
@ -1177,6 +1183,7 @@ void free_used_memory()
|
|||||||
mysql_server_end();
|
mysql_server_end();
|
||||||
|
|
||||||
/* Don't use DBUG after mysql_server_end() */
|
/* Don't use DBUG after mysql_server_end() */
|
||||||
|
DBUG_VIOLATION_HELPER_LEAVE;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1543,7 +1550,7 @@ void show_diff(DYNAMIC_STRING* ds,
|
|||||||
else
|
else
|
||||||
diff_name = 0;
|
diff_name = 0;
|
||||||
#else
|
#else
|
||||||
diff_name = "diff"; // Otherwise always assume it's called diff
|
diff_name = "diff"; /* Otherwise always assume it's called diff */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (diff_name)
|
if (diff_name)
|
||||||
@ -3321,21 +3328,30 @@ void do_write_file_command(struct st_command *command, my_bool append)
|
|||||||
sizeof(write_file_args)/sizeof(struct command_arg),
|
sizeof(write_file_args)/sizeof(struct command_arg),
|
||||||
' ');
|
' ');
|
||||||
|
|
||||||
/* If no delimiter was provided, use EOF */
|
|
||||||
if (ds_delimiter.length == 0)
|
|
||||||
dynstr_set(&ds_delimiter, "EOF");
|
|
||||||
|
|
||||||
if (!append && access(ds_filename.str, F_OK) == 0)
|
if (!append && access(ds_filename.str, F_OK) == 0)
|
||||||
{
|
{
|
||||||
/* The file should not be overwritten */
|
/* The file should not be overwritten */
|
||||||
die("File already exist: '%s'", ds_filename.str);
|
die("File already exist: '%s'", ds_filename.str);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ds_content= command->content;
|
||||||
|
/* If it hasn't been done already by a loop iteration, fill it in */
|
||||||
|
if (! ds_content.str)
|
||||||
|
{
|
||||||
|
/* If no delimiter was provided, use EOF */
|
||||||
|
if (ds_delimiter.length == 0)
|
||||||
|
dynstr_set(&ds_delimiter, "EOF");
|
||||||
|
|
||||||
init_dynamic_string(&ds_content, "", 1024, 1024);
|
init_dynamic_string(&ds_content, "", 1024, 1024);
|
||||||
read_until_delimiter(&ds_content, &ds_delimiter);
|
read_until_delimiter(&ds_content, &ds_delimiter);
|
||||||
|
command->content= ds_content;
|
||||||
|
}
|
||||||
|
/* This function could be called even if "false", so check before printing */
|
||||||
|
if (cur_block->ok)
|
||||||
|
{
|
||||||
DBUG_PRINT("info", ("Writing to file: %s", ds_filename.str));
|
DBUG_PRINT("info", ("Writing to file: %s", ds_filename.str));
|
||||||
str_to_file2(ds_filename.str, ds_content.str, ds_content.length, append);
|
str_to_file2(ds_filename.str, ds_content.str, ds_content.length, append);
|
||||||
dynstr_free(&ds_content);
|
}
|
||||||
dynstr_free(&ds_filename);
|
dynstr_free(&ds_filename);
|
||||||
dynstr_free(&ds_delimiter);
|
dynstr_free(&ds_delimiter);
|
||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
@ -3478,12 +3494,17 @@ void do_diff_files(struct st_command *command)
|
|||||||
die("command \"diff_files\" failed, file '%s' does not exist",
|
die("command \"diff_files\" failed, file '%s' does not exist",
|
||||||
ds_filename2.str);
|
ds_filename2.str);
|
||||||
|
|
||||||
if ((error= compare_files(ds_filename.str, ds_filename2.str)))
|
if ((error= compare_files(ds_filename.str, ds_filename2.str)) &&
|
||||||
|
match_expected_error(command, error, NULL) < 0)
|
||||||
{
|
{
|
||||||
/* Compare of the two files failed, append them to output
|
/* Compare of the two files failed, append them to output
|
||||||
so the failure can be analyzed
|
so the failure can be analyzed, but only if it was not
|
||||||
|
expected to fail.
|
||||||
*/
|
*/
|
||||||
show_diff(&ds_res, ds_filename.str, ds_filename2.str);
|
show_diff(&ds_res, ds_filename.str, ds_filename2.str);
|
||||||
|
log_file.write(&ds_res);
|
||||||
|
log_file.flush();
|
||||||
|
dynstr_set(&ds_res, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
dynstr_free(&ds_filename);
|
dynstr_free(&ds_filename);
|
||||||
@ -4910,6 +4931,8 @@ do_handle_error:
|
|||||||
<opts> - options to use for the connection
|
<opts> - options to use for the connection
|
||||||
* SSL - use SSL if available
|
* SSL - use SSL if available
|
||||||
* COMPRESS - use compression if available
|
* COMPRESS - use compression if available
|
||||||
|
* SHM - use shared memory if available
|
||||||
|
* PIPE - use named pipe if available
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -4918,6 +4941,7 @@ void do_connect(struct st_command *command)
|
|||||||
int con_port= opt_port;
|
int con_port= opt_port;
|
||||||
char *con_options;
|
char *con_options;
|
||||||
my_bool con_ssl= 0, con_compress= 0;
|
my_bool con_ssl= 0, con_compress= 0;
|
||||||
|
my_bool con_pipe= 0, con_shm= 0;
|
||||||
struct st_connection* con_slot;
|
struct st_connection* con_slot;
|
||||||
|
|
||||||
static DYNAMIC_STRING ds_connection_name;
|
static DYNAMIC_STRING ds_connection_name;
|
||||||
@ -4928,6 +4952,9 @@ void do_connect(struct st_command *command)
|
|||||||
static DYNAMIC_STRING ds_port;
|
static DYNAMIC_STRING ds_port;
|
||||||
static DYNAMIC_STRING ds_sock;
|
static DYNAMIC_STRING ds_sock;
|
||||||
static DYNAMIC_STRING ds_options;
|
static DYNAMIC_STRING ds_options;
|
||||||
|
#ifdef HAVE_SMEM
|
||||||
|
static DYNAMIC_STRING ds_shm;
|
||||||
|
#endif
|
||||||
const struct command_arg connect_args[] = {
|
const struct command_arg connect_args[] = {
|
||||||
{ "connection name", ARG_STRING, TRUE, &ds_connection_name, "Name of the connection" },
|
{ "connection name", ARG_STRING, TRUE, &ds_connection_name, "Name of the connection" },
|
||||||
{ "host", ARG_STRING, TRUE, &ds_host, "Host to connect to" },
|
{ "host", ARG_STRING, TRUE, &ds_host, "Host to connect to" },
|
||||||
@ -4955,6 +4982,11 @@ void do_connect(struct st_command *command)
|
|||||||
die("Illegal argument for port: '%s'", ds_port.str);
|
die("Illegal argument for port: '%s'", ds_port.str);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef HAVE_SMEM
|
||||||
|
/* Shared memory */
|
||||||
|
init_dynamic_string(&ds_shm, ds_sock.str, 0, 0);
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Sock */
|
/* Sock */
|
||||||
if (ds_sock.length)
|
if (ds_sock.length)
|
||||||
{
|
{
|
||||||
@ -4993,6 +5025,10 @@ void do_connect(struct st_command *command)
|
|||||||
con_ssl= 1;
|
con_ssl= 1;
|
||||||
else if (!strncmp(con_options, "COMPRESS", 8))
|
else if (!strncmp(con_options, "COMPRESS", 8))
|
||||||
con_compress= 1;
|
con_compress= 1;
|
||||||
|
else if (!strncmp(con_options, "PIPE", 4))
|
||||||
|
con_pipe= 1;
|
||||||
|
else if (!strncmp(con_options, "SHM", 3))
|
||||||
|
con_shm= 1;
|
||||||
else
|
else
|
||||||
die("Illegal option to connect: %.*s",
|
die("Illegal option to connect: %.*s",
|
||||||
(int) (end - con_options), con_options);
|
(int) (end - con_options), con_options);
|
||||||
@ -5043,6 +5079,31 @@ void do_connect(struct st_command *command)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef __WIN__
|
||||||
|
if (con_pipe)
|
||||||
|
{
|
||||||
|
uint protocol= MYSQL_PROTOCOL_PIPE;
|
||||||
|
mysql_options(&con_slot->mysql, MYSQL_OPT_PROTOCOL, &protocol);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef HAVE_SMEM
|
||||||
|
if (con_shm)
|
||||||
|
{
|
||||||
|
uint protocol= MYSQL_PROTOCOL_MEMORY;
|
||||||
|
if (!ds_shm.length)
|
||||||
|
die("Missing shared memory base name");
|
||||||
|
mysql_options(&con_slot->mysql, MYSQL_SHARED_MEMORY_BASE_NAME, ds_shm.str);
|
||||||
|
mysql_options(&con_slot->mysql, MYSQL_OPT_PROTOCOL, &protocol);
|
||||||
|
}
|
||||||
|
else if(shared_memory_base_name)
|
||||||
|
{
|
||||||
|
mysql_options(&con_slot->mysql, MYSQL_SHARED_MEMORY_BASE_NAME,
|
||||||
|
shared_memory_base_name);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/* Use default db name */
|
/* Use default db name */
|
||||||
if (ds_database.length == 0)
|
if (ds_database.length == 0)
|
||||||
dynstr_set(&ds_database, opt_db);
|
dynstr_set(&ds_database, opt_db);
|
||||||
@ -5075,6 +5136,9 @@ void do_connect(struct st_command *command)
|
|||||||
dynstr_free(&ds_port);
|
dynstr_free(&ds_port);
|
||||||
dynstr_free(&ds_sock);
|
dynstr_free(&ds_sock);
|
||||||
dynstr_free(&ds_options);
|
dynstr_free(&ds_options);
|
||||||
|
#ifdef HAVE_SMEM
|
||||||
|
dynstr_free(&ds_shm);
|
||||||
|
#endif
|
||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5746,6 +5810,12 @@ static struct my_option my_long_options[] =
|
|||||||
0, 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
0, 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
||||||
{"server-file", 'F', "Read embedded server arguments from file.",
|
{"server-file", 'F', "Read embedded server arguments from file.",
|
||||||
0, 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
0, 0, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
|
||||||
|
#ifdef HAVE_SMEM
|
||||||
|
{"shared-memory-base-name", OPT_SHARED_MEMORY_BASE_NAME,
|
||||||
|
"Base name of shared memory.", (uchar**) &shared_memory_base_name,
|
||||||
|
(uchar**) &shared_memory_base_name, 0, GET_STR, REQUIRED_ARG, 0, 0, 0,
|
||||||
|
0, 0, 0},
|
||||||
|
#endif
|
||||||
{"silent", 's', "Suppress all normal output. Synonym for --quiet.",
|
{"silent", 's', "Suppress all normal output. Synonym for --quiet.",
|
||||||
(uchar**) &silent, (uchar**) &silent, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
|
(uchar**) &silent, (uchar**) &silent, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||||
{"skip-safemalloc", OPT_SKIP_SAFEMALLOC,
|
{"skip-safemalloc", OPT_SKIP_SAFEMALLOC,
|
||||||
@ -6809,8 +6879,10 @@ void run_query_stmt(MYSQL *mysql, struct st_command *command,
|
|||||||
MYSQL_STMT *stmt;
|
MYSQL_STMT *stmt;
|
||||||
DYNAMIC_STRING ds_prepare_warnings;
|
DYNAMIC_STRING ds_prepare_warnings;
|
||||||
DYNAMIC_STRING ds_execute_warnings;
|
DYNAMIC_STRING ds_execute_warnings;
|
||||||
|
ulonglong affected_rows;
|
||||||
DBUG_ENTER("run_query_stmt");
|
DBUG_ENTER("run_query_stmt");
|
||||||
DBUG_PRINT("query", ("'%-.60s'", query));
|
DBUG_PRINT("query", ("'%-.60s'", query));
|
||||||
|
LINT_INIT(affected_rows);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Init a new stmt if it's not already one created for this connection
|
Init a new stmt if it's not already one created for this connection
|
||||||
@ -6950,6 +7022,17 @@ void run_query_stmt(MYSQL *mysql, struct st_command *command,
|
|||||||
*/
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Need to grab affected rows information before getting
|
||||||
|
warnings here
|
||||||
|
*/
|
||||||
|
{
|
||||||
|
ulonglong affected_rows;
|
||||||
|
LINT_INIT(affected_rows);
|
||||||
|
|
||||||
|
if (!disable_info)
|
||||||
|
affected_rows= mysql_affected_rows(mysql);
|
||||||
|
|
||||||
if (!disable_warnings)
|
if (!disable_warnings)
|
||||||
{
|
{
|
||||||
/* Get the warnings from execute */
|
/* Get the warnings from execute */
|
||||||
@ -6974,8 +7057,8 @@ void run_query_stmt(MYSQL *mysql, struct st_command *command,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!disable_info)
|
if (!disable_info)
|
||||||
append_info(ds, mysql_affected_rows(mysql), mysql_info(mysql));
|
append_info(ds, affected_rows, mysql_info(mysql));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
end:
|
end:
|
||||||
@ -7224,6 +7307,10 @@ void run_query(struct st_connection *cn, struct st_command *command, int flags)
|
|||||||
run_query_normal(cn, command, flags, query, query_len,
|
run_query_normal(cn, command, flags, query, query_len,
|
||||||
ds, &ds_warnings);
|
ds, &ds_warnings);
|
||||||
|
|
||||||
|
dynstr_free(&ds_warnings);
|
||||||
|
if (command->type == Q_EVAL)
|
||||||
|
dynstr_free(&eval_query);
|
||||||
|
|
||||||
if (display_result_sorted)
|
if (display_result_sorted)
|
||||||
{
|
{
|
||||||
/* Sort the result set and append it to result */
|
/* Sort the result set and append it to result */
|
||||||
@ -7254,11 +7341,8 @@ void run_query(struct st_connection *cn, struct st_command *command, int flags)
|
|||||||
check_require(ds, command->require_file);
|
check_require(ds, command->require_file);
|
||||||
}
|
}
|
||||||
|
|
||||||
dynstr_free(&ds_warnings);
|
|
||||||
if (ds == &ds_result)
|
if (ds == &ds_result)
|
||||||
dynstr_free(&ds_result);
|
dynstr_free(&ds_result);
|
||||||
if (command->type == Q_EVAL)
|
|
||||||
dynstr_free(&eval_query);
|
|
||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -7704,6 +7788,11 @@ int main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef HAVE_SMEM
|
||||||
|
if (shared_memory_base_name)
|
||||||
|
mysql_options(&con->mysql,MYSQL_SHARED_MEMORY_BASE_NAME,shared_memory_base_name);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (!(con->name = my_strdup("default", MYF(MY_WME))))
|
if (!(con->name = my_strdup("default", MYF(MY_WME))))
|
||||||
die("Out of memory");
|
die("Out of memory");
|
||||||
|
|
||||||
@ -7742,7 +7831,32 @@ int main(int argc, char **argv)
|
|||||||
command->type= Q_COMMENT;
|
command->type= Q_COMMENT;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cur_block->ok)
|
my_bool ok_to_do= cur_block->ok;
|
||||||
|
/*
|
||||||
|
Some commands need to be "done" the first time if they may get
|
||||||
|
re-iterated over in a true context. This can only happen if there's
|
||||||
|
a while loop at some level above the current block.
|
||||||
|
*/
|
||||||
|
if (!ok_to_do)
|
||||||
|
{
|
||||||
|
if (command->type == Q_SOURCE ||
|
||||||
|
command->type == Q_ERROR ||
|
||||||
|
command->type == Q_WRITE_FILE ||
|
||||||
|
command->type == Q_APPEND_FILE ||
|
||||||
|
command->type == Q_PERL)
|
||||||
|
{
|
||||||
|
for (struct st_block *stb= cur_block-1; stb >= block_stack; stb--)
|
||||||
|
{
|
||||||
|
if (stb->cmd == cmd_while)
|
||||||
|
{
|
||||||
|
ok_to_do= 1;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ok_to_do)
|
||||||
{
|
{
|
||||||
command->last_argument= command->first_argument;
|
command->last_argument= command->first_argument;
|
||||||
processed = 1;
|
processed = 1;
|
||||||
@ -8053,6 +8167,8 @@ int main(int argc, char **argv)
|
|||||||
if (parsing_disabled)
|
if (parsing_disabled)
|
||||||
die("Test ended with parsing disabled");
|
die("Test ended with parsing disabled");
|
||||||
|
|
||||||
|
my_bool empty_result= FALSE;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
The whole test has been executed _sucessfully_.
|
The whole test has been executed _sucessfully_.
|
||||||
Time to compare result or save it to record file.
|
Time to compare result or save it to record file.
|
||||||
@ -8092,12 +8208,21 @@ int main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
/* Empty output is an error *unless* we also have an empty result file */
|
||||||
|
if (! result_file_name || record ||
|
||||||
|
compare_files (log_file.file_name(), result_file_name))
|
||||||
{
|
{
|
||||||
die("The test didn't produce any output");
|
die("The test didn't produce any output");
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
empty_result= TRUE; /* Meaning empty was expected */
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!command_executed && result_file_name)
|
if (!command_executed && result_file_name && !empty_result)
|
||||||
die("No queries executed but result file found!");
|
die("No queries executed but non-empty result file found!");
|
||||||
|
|
||||||
verbose_msg("Test has succeeded!");
|
verbose_msg("Test has succeeded!");
|
||||||
timer_output();
|
timer_output();
|
||||||
@ -8184,6 +8309,8 @@ void do_get_replace_column(struct st_command *command)
|
|||||||
}
|
}
|
||||||
my_free(start, MYF(0));
|
my_free(start, MYF(0));
|
||||||
command->last_argument= command->end;
|
command->last_argument= command->end;
|
||||||
|
|
||||||
|
DBUG_VOID_RETURN;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -7,6 +7,13 @@
|
|||||||
# include <config.h>
|
# include <config.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef NOT_YET /* causes problem on MacOSX */
|
||||||
|
/* to get wcwidth() defined */
|
||||||
|
#define _XOPEN_SOURCE 600
|
||||||
|
#define _XOPEN_SOURCE_EXTENDED
|
||||||
|
#define _XOPEN_
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Ultrix botches type-ahead when switching from canonical to
|
Ultrix botches type-ahead when switching from canonical to
|
||||||
non-canonical mode, at least through version 4.3
|
non-canonical mode, at least through version 4.3
|
||||||
|
@ -461,12 +461,12 @@ rl_redisplay ()
|
|||||||
register char *line;
|
register char *line;
|
||||||
int inv_botlin, lb_linenum, o_cpos;
|
int inv_botlin, lb_linenum, o_cpos;
|
||||||
int newlines, lpos, temp, modmark;
|
int newlines, lpos, temp, modmark;
|
||||||
char *prompt_this_line;
|
const char *prompt_this_line;
|
||||||
#if defined (HANDLE_MULTIBYTE)
|
#if defined (HANDLE_MULTIBYTE)
|
||||||
int num, n0;
|
int num, n0= 0;
|
||||||
wchar_t wc;
|
wchar_t wc;
|
||||||
size_t wc_bytes;
|
size_t wc_bytes;
|
||||||
int wc_width;
|
int wc_width= 0;
|
||||||
mbstate_t ps;
|
mbstate_t ps;
|
||||||
int _rl_wrapped_multicolumn = 0;
|
int _rl_wrapped_multicolumn = 0;
|
||||||
#endif
|
#endif
|
||||||
@ -824,7 +824,7 @@ rl_redisplay ()
|
|||||||
cpos_buffer_position = out;
|
cpos_buffer_position = out;
|
||||||
lb_linenum = newlines;
|
lb_linenum = newlines;
|
||||||
}
|
}
|
||||||
for (i = in; i < in+wc_bytes; i++)
|
for (i = in; i < in+(int)wc_bytes; i++)
|
||||||
line[out++] = rl_line_buffer[i];
|
line[out++] = rl_line_buffer[i];
|
||||||
for (i = 0; i < wc_width; i++)
|
for (i = 0; i < wc_width; i++)
|
||||||
CHECK_LPOS();
|
CHECK_LPOS();
|
||||||
|
@ -211,14 +211,14 @@ history_get (offset)
|
|||||||
|
|
||||||
HIST_ENTRY *
|
HIST_ENTRY *
|
||||||
alloc_history_entry (string, ts)
|
alloc_history_entry (string, ts)
|
||||||
char *string;
|
const char *string;
|
||||||
char *ts;
|
char *ts;
|
||||||
{
|
{
|
||||||
HIST_ENTRY *temp;
|
HIST_ENTRY *temp;
|
||||||
|
|
||||||
temp = (HIST_ENTRY *)xmalloc (sizeof (HIST_ENTRY));
|
temp = (HIST_ENTRY *)xmalloc (sizeof (HIST_ENTRY));
|
||||||
|
|
||||||
temp->line = string ? savestring (string) : string;
|
temp->line = string ? savestring ((char*) string) : (char*) string;
|
||||||
temp->data = (char *)NULL;
|
temp->data = (char *)NULL;
|
||||||
temp->timestamp = ts;
|
temp->timestamp = ts;
|
||||||
|
|
||||||
|
@ -109,8 +109,8 @@ extern int _rl_is_mbchar_matched PARAMS((char *, int, int, char *, int));
|
|||||||
extern wchar_t _rl_char_value PARAMS((char *, int));
|
extern wchar_t _rl_char_value PARAMS((char *, int));
|
||||||
extern int _rl_walphabetic PARAMS((wchar_t));
|
extern int _rl_walphabetic PARAMS((wchar_t));
|
||||||
|
|
||||||
#define _rl_to_wupper(wc) (iswlower (wc) ? towupper (wc) : (wc))
|
#define _rl_to_wupper(wc) (iswlower (wc) ? (wchar_t) towupper (wc) : (wc))
|
||||||
#define _rl_to_wlower(wc) (iswupper (wc) ? towlower (wc) : (wc))
|
#define _rl_to_wlower(wc) (iswupper (wc) ? (wchar_t) towlower (wc) : (wc))
|
||||||
|
|
||||||
#define MB_NEXTCHAR(b,s,c,f) \
|
#define MB_NEXTCHAR(b,s,c,f) \
|
||||||
((MB_CUR_MAX > 1 && rl_byte_oriented == 0) \
|
((MB_CUR_MAX > 1 && rl_byte_oriented == 0) \
|
||||||
|
@ -614,7 +614,7 @@ rl_arrow_keys (count, c)
|
|||||||
#ifdef HANDLE_MULTIBYTE
|
#ifdef HANDLE_MULTIBYTE
|
||||||
static char pending_bytes[MB_LEN_MAX];
|
static char pending_bytes[MB_LEN_MAX];
|
||||||
static int pending_bytes_length = 0;
|
static int pending_bytes_length = 0;
|
||||||
static mbstate_t ps = {0};
|
static mbstate_t ps;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Insert the character C at the current location, moving point forward.
|
/* Insert the character C at the current location, moving point forward.
|
||||||
|
@ -42,7 +42,7 @@
|
|||||||
|
|
||||||
static void
|
static void
|
||||||
memory_error_and_abort (fname)
|
memory_error_and_abort (fname)
|
||||||
char *fname;
|
const char *fname;
|
||||||
{
|
{
|
||||||
fprintf (stderr, "%s: out of virtual memory\n", fname);
|
fprintf (stderr, "%s: out of virtual memory\n", fname);
|
||||||
exit (2);
|
exit (2);
|
||||||
|
41
configure.in
41
configure.in
@ -1652,13 +1652,14 @@ then
|
|||||||
DEBUG_OPTIMIZE_CXX="-O"
|
DEBUG_OPTIMIZE_CXX="-O"
|
||||||
OPTIMIZE_CXXFLAGS="$MAX_CXX_OPTIMIZE"
|
OPTIMIZE_CXXFLAGS="$MAX_CXX_OPTIMIZE"
|
||||||
else
|
else
|
||||||
DEBUG_CXXFLAGS="-g"
|
|
||||||
DEBUG_OPTIMIZE_CXX=""
|
DEBUG_OPTIMIZE_CXX=""
|
||||||
case $SYSTEM_TYPE in
|
case $SYSTEM_TYPE in
|
||||||
*solaris*)
|
*solaris*)
|
||||||
|
DEBUG_CXXFLAGS="-g0"
|
||||||
OPTIMIZE_CXXFLAGS="-O1"
|
OPTIMIZE_CXXFLAGS="-O1"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
|
DEBUG_CXXFLAGS="-g"
|
||||||
OPTIMIZE_CXXFLAGS="-O"
|
OPTIMIZE_CXXFLAGS="-O"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@ -1715,6 +1716,23 @@ else
|
|||||||
CXXFLAGS="$OPTIMIZE_CXXFLAGS $CXXFLAGS"
|
CXXFLAGS="$OPTIMIZE_CXXFLAGS $CXXFLAGS"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Debug Sync Facility. NOTE: depends on 'with_debug'. Must be behind it.
|
||||||
|
AC_MSG_CHECKING(if Debug Sync Facility should be enabled.)
|
||||||
|
AC_ARG_ENABLE(debug_sync,
|
||||||
|
AS_HELP_STRING([--enable-debug-sync],
|
||||||
|
[Build a version with Debug Sync Facility]),
|
||||||
|
[ enable_debug_sync=$enableval ],
|
||||||
|
[ enable_debug_sync=$with_debug ])
|
||||||
|
|
||||||
|
if test "$enable_debug_sync" != "no"
|
||||||
|
then
|
||||||
|
AC_DEFINE([ENABLED_DEBUG_SYNC], [1],
|
||||||
|
[If Debug Sync Facility should be enabled])
|
||||||
|
AC_MSG_RESULT([yes])
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT([no])
|
||||||
|
fi
|
||||||
|
|
||||||
# If we should allow error injection tests
|
# If we should allow error injection tests
|
||||||
AC_ARG_WITH(error-inject,
|
AC_ARG_WITH(error-inject,
|
||||||
AC_HELP_STRING([--with-error-inject],[Enable error injection in MySQL Server]),
|
AC_HELP_STRING([--with-error-inject],[Enable error injection in MySQL Server]),
|
||||||
@ -2786,7 +2804,7 @@ server_scripts=
|
|||||||
|
|
||||||
dnl This probably should be cleaned up more - for now the threaded
|
dnl This probably should be cleaned up more - for now the threaded
|
||||||
dnl client is just using plain-old libs.
|
dnl client is just using plain-old libs.
|
||||||
sql_client_dirs="strings regex mysys libmysql"
|
sql_client_dirs="strings mysys dbug extra regex libmysql unittest"
|
||||||
|
|
||||||
AM_CONDITIONAL(THREAD_SAFE_CLIENT, test "$THREAD_SAFE_CLIENT" != "no")
|
AM_CONDITIONAL(THREAD_SAFE_CLIENT, test "$THREAD_SAFE_CLIENT" != "no")
|
||||||
|
|
||||||
@ -2814,12 +2832,20 @@ fi
|
|||||||
AC_SUBST(netware_dir)
|
AC_SUBST(netware_dir)
|
||||||
AM_CONDITIONAL(HAVE_NETWARE, test "$netware_dir" = "netware")
|
AM_CONDITIONAL(HAVE_NETWARE, test "$netware_dir" = "netware")
|
||||||
|
|
||||||
if test "$with_server" = "yes" -o "$THREAD_SAFE_CLIENT" != "no"
|
if test "$with_server" != "no" -o "$THREAD_SAFE_CLIENT" != "no"
|
||||||
then
|
then
|
||||||
AC_DEFINE([THREAD], [1],
|
AC_DEFINE([THREAD], [1],
|
||||||
[Define if you want to have threaded code. This may be undef on client code])
|
[Define if you want to have threaded code. This may be undef on client code])
|
||||||
|
# Avoid _PROGRAMS names
|
||||||
|
THREAD_LOBJECTS="thr_alarm.o thr_lock.o thr_mutex.o thr_rwlock.o my_pthread.o my_thr_init.o mf_keycache.o mf_keycaches.o waiting_threads.o"
|
||||||
|
AC_SUBST(THREAD_LOBJECTS)
|
||||||
|
fi
|
||||||
|
AM_CONDITIONAL(NEED_THREAD, test "$with_server" != "no" -o "$THREAD_SAFE_CLIENT" != "no")
|
||||||
|
|
||||||
|
if test "$with_server" != "no"
|
||||||
|
then
|
||||||
server_scripts="mysqld_safe mysql_install_db"
|
server_scripts="mysqld_safe mysql_install_db"
|
||||||
sql_server_dirs="strings mysys dbug extra regex"
|
sql_server_dirs="strings mysys dbug extra regex storage plugin"
|
||||||
|
|
||||||
sql_server="vio sql"
|
sql_server="vio sql"
|
||||||
fi
|
fi
|
||||||
@ -2845,9 +2871,10 @@ AC_SUBST(mysql_plugin_defs)
|
|||||||
|
|
||||||
|
|
||||||
# Now that sql_client_dirs and sql_server_dirs are stable, determine the union.
|
# Now that sql_client_dirs and sql_server_dirs are stable, determine the union.
|
||||||
# Start with the (longer) server list, add each client item not yet present.
|
# We support client-only builds by "--without-server", but not vice versa,
|
||||||
sql_union_dirs=" $sql_server_dirs "
|
# so we start with the client list, then add each server item not yet present.
|
||||||
for DIR in $sql_client_dirs
|
sql_union_dirs=" $sql_client_dirs "
|
||||||
|
for DIR in $sql_server_dirs
|
||||||
do
|
do
|
||||||
if echo " $sql_union_dirs " | grep " $DIR " >/dev/null
|
if echo " $sql_union_dirs " | grep " $DIR " >/dev/null
|
||||||
then
|
then
|
||||||
|
@ -27,7 +27,6 @@
|
|||||||
#include <time.h>
|
#include <time.h>
|
||||||
|
|
||||||
#if defined(_WIN32)
|
#if defined(_WIN32)
|
||||||
#define _WIN32_WINNT 0x0400
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <wincrypt.h>
|
#include <wincrypt.h>
|
||||||
#else
|
#else
|
||||||
|
@ -76,6 +76,8 @@ my_bool ft_boolean_check_syntax_string(const uchar *);
|
|||||||
|
|
||||||
extern const HA_KEYSEG ft_keysegs[FT_SEGS];
|
extern const HA_KEYSEG ft_keysegs[FT_SEGS];
|
||||||
|
|
||||||
|
typedef union {int32 i; float f;} FT_WEIGTH;
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -49,6 +49,24 @@ typedef struct unicase_info_st
|
|||||||
extern MY_UNICASE_INFO *my_unicase_default[256];
|
extern MY_UNICASE_INFO *my_unicase_default[256];
|
||||||
extern MY_UNICASE_INFO *my_unicase_turkish[256];
|
extern MY_UNICASE_INFO *my_unicase_turkish[256];
|
||||||
|
|
||||||
|
#define MY_UCA_MAX_CONTRACTION 4
|
||||||
|
#define MY_UCA_MAX_WEIGHT_SIZE 8
|
||||||
|
|
||||||
|
typedef struct my_contraction_t
|
||||||
|
{
|
||||||
|
my_wc_t ch[MY_UCA_MAX_CONTRACTION]; /* Character sequence */
|
||||||
|
uint16 weight[MY_UCA_MAX_WEIGHT_SIZE];/* Its weight string, 0-terminated */
|
||||||
|
} MY_CONTRACTION;
|
||||||
|
|
||||||
|
|
||||||
|
typedef struct my_contraction_list_t
|
||||||
|
{
|
||||||
|
size_t nitems; /* Number of items in the list */
|
||||||
|
MY_CONTRACTION *item; /* List of contractions */
|
||||||
|
char *flags; /* Character flags, e.g. "is contraction head") */
|
||||||
|
} MY_CONTRACTIONS;
|
||||||
|
|
||||||
|
|
||||||
typedef struct uni_ctype_st
|
typedef struct uni_ctype_st
|
||||||
{
|
{
|
||||||
uchar pctype;
|
uchar pctype;
|
||||||
@ -262,7 +280,7 @@ typedef struct charset_info_st
|
|||||||
uchar *to_lower;
|
uchar *to_lower;
|
||||||
uchar *to_upper;
|
uchar *to_upper;
|
||||||
uchar *sort_order;
|
uchar *sort_order;
|
||||||
uint16 *contractions;
|
MY_CONTRACTIONS *contractions;
|
||||||
uint16 **sort_order_big;
|
uint16 **sort_order_big;
|
||||||
uint16 *tab_to_uni;
|
uint16 *tab_to_uni;
|
||||||
MY_UNI_IDX *tab_from_uni;
|
MY_UNI_IDX *tab_from_uni;
|
||||||
@ -475,6 +493,13 @@ my_bool my_charset_is_ascii_based(CHARSET_INFO *cs);
|
|||||||
my_bool my_charset_is_8bit_pure_ascii(CHARSET_INFO *cs);
|
my_bool my_charset_is_8bit_pure_ascii(CHARSET_INFO *cs);
|
||||||
uint my_charset_repertoire(CHARSET_INFO *cs);
|
uint my_charset_repertoire(CHARSET_INFO *cs);
|
||||||
|
|
||||||
|
my_bool my_uca_have_contractions(CHARSET_INFO *cs);
|
||||||
|
my_bool my_uca_can_be_contraction_head(CHARSET_INFO *cs, my_wc_t wc);
|
||||||
|
my_bool my_uca_can_be_contraction_tail(CHARSET_INFO *cs, my_wc_t wc);
|
||||||
|
uint16 *my_uca_contraction2_weight(CHARSET_INFO *cs, my_wc_t wc1, my_wc_t wc2);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#define _MY_U 01 /* Upper case */
|
#define _MY_U 01 /* Upper case */
|
||||||
#define _MY_L 02 /* Lower case */
|
#define _MY_L 02 /* Lower case */
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 2000 MySQL AB
|
/* Copyright (C) 2000 MySQL AB & 2009 Monty Program Ab
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -16,6 +16,29 @@
|
|||||||
#ifndef _dbug_h
|
#ifndef _dbug_h
|
||||||
#define _dbug_h
|
#define _dbug_h
|
||||||
|
|
||||||
|
#if defined(__cplusplus) && !defined(DBUG_OFF)
|
||||||
|
class Dbug_violation_helper
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
inline Dbug_violation_helper() :
|
||||||
|
_entered(TRUE)
|
||||||
|
{ }
|
||||||
|
|
||||||
|
inline ~Dbug_violation_helper()
|
||||||
|
{
|
||||||
|
assert(!_entered);
|
||||||
|
}
|
||||||
|
|
||||||
|
inline void leave()
|
||||||
|
{
|
||||||
|
_entered= FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
bool _entered;
|
||||||
|
};
|
||||||
|
#endif /* C++ */
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
@ -30,7 +53,9 @@ struct _db_stack_frame_ {
|
|||||||
|
|
||||||
struct _db_code_state_;
|
struct _db_code_state_;
|
||||||
extern my_bool _dbug_on_;
|
extern my_bool _dbug_on_;
|
||||||
extern my_bool _db_keyword_(struct _db_code_state_ *, const char *, int);
|
extern my_bool _db_keyword_(struct _db_code_state_ *cs, const char *keyword,
|
||||||
|
int strict_flag);
|
||||||
|
extern int _db_strict_keyword_(const char *keyword);
|
||||||
extern int _db_explain_(struct _db_code_state_ *cs, char *buf, size_t len);
|
extern int _db_explain_(struct _db_code_state_ *cs, char *buf, size_t len);
|
||||||
extern int _db_explain_init_(char *buf, size_t len);
|
extern int _db_explain_init_(char *buf, size_t len);
|
||||||
extern int _db_is_pushed_(void);
|
extern int _db_is_pushed_(void);
|
||||||
@ -55,9 +80,24 @@ extern void _db_unlock_file_(void);
|
|||||||
extern FILE *_db_fp_(void);
|
extern FILE *_db_fp_(void);
|
||||||
extern void _db_flush_();
|
extern void _db_flush_();
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
|
||||||
|
#define DBUG_ENTER(a) struct _db_stack_frame_ _db_stack_frame_; \
|
||||||
|
Dbug_violation_helper dbug_violation_helper; \
|
||||||
|
_db_enter_ (a,__FILE__,__LINE__,&_db_stack_frame_)
|
||||||
|
#define DBUG_VIOLATION_HELPER_LEAVE dbug_violation_helper.leave()
|
||||||
|
|
||||||
|
#else /* C */
|
||||||
|
|
||||||
#define DBUG_ENTER(a) struct _db_stack_frame_ _db_stack_frame_; \
|
#define DBUG_ENTER(a) struct _db_stack_frame_ _db_stack_frame_; \
|
||||||
_db_enter_ (a,__FILE__,__LINE__,&_db_stack_frame_)
|
_db_enter_ (a,__FILE__,__LINE__,&_db_stack_frame_)
|
||||||
#define DBUG_LEAVE _db_return_ (__LINE__, &_db_stack_frame_)
|
#define DBUG_VIOLATION_HELPER_LEAVE do { } while(0)
|
||||||
|
|
||||||
|
#endif /* C++ */
|
||||||
|
|
||||||
|
#define DBUG_LEAVE \
|
||||||
|
DBUG_VIOLATION_HELPER_LEAVE; \
|
||||||
|
_db_return_ (__LINE__, &_db_stack_frame_)
|
||||||
#define DBUG_RETURN(a1) do {DBUG_LEAVE; return(a1);} while(0)
|
#define DBUG_RETURN(a1) do {DBUG_LEAVE; return(a1);} while(0)
|
||||||
#define DBUG_VOID_RETURN do {DBUG_LEAVE; return;} while(0)
|
#define DBUG_VOID_RETURN do {DBUG_LEAVE; return;} while(0)
|
||||||
#define DBUG_EXECUTE(keyword,a1) \
|
#define DBUG_EXECUTE(keyword,a1) \
|
||||||
@ -88,23 +128,11 @@ extern void _db_flush_();
|
|||||||
#define DEBUGGER_OFF do { _dbug_on_= 0; } while(0)
|
#define DEBUGGER_OFF do { _dbug_on_= 0; } while(0)
|
||||||
#define DEBUGGER_ON do { _dbug_on_= 1; } while(0)
|
#define DEBUGGER_ON do { _dbug_on_= 1; } while(0)
|
||||||
#define IF_DBUG(A) A
|
#define IF_DBUG(A) A
|
||||||
#ifndef __WIN__
|
|
||||||
#define DBUG_ABORT() (_db_flush_(), abort())
|
#define DBUG_ABORT() (_db_flush_(), abort())
|
||||||
#else
|
|
||||||
/*
|
|
||||||
Avoid popup with abort/retry/ignore buttons. When BUG#31745 is fixed we can
|
|
||||||
call abort() instead of _exit(3) (now it would cause a "test signal" popup).
|
|
||||||
*/
|
|
||||||
#include <crtdbg.h>
|
|
||||||
#define DBUG_ABORT() (_db_flush_(),\
|
|
||||||
(void)_CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_FILE),\
|
|
||||||
(void)_CrtSetReportFile(_CRT_ERROR, _CRTDBG_FILE_STDERR),\
|
|
||||||
_exit(3))
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#else /* No debugger */
|
#else /* No debugger */
|
||||||
|
|
||||||
#define DBUG_ENTER(a1)
|
#define DBUG_ENTER(a1)
|
||||||
|
#define DBUG_VIOLATION_HELPER_LEAVE do { } while(0)
|
||||||
#define DBUG_LEAVE
|
#define DBUG_LEAVE
|
||||||
#define DBUG_RETURN(a1) do { return(a1); } while(0)
|
#define DBUG_RETURN(a1) do { return(a1); } while(0)
|
||||||
#define DBUG_VOID_RETURN do { return; } while(0)
|
#define DBUG_VOID_RETURN do { return; } while(0)
|
||||||
|
@ -69,6 +69,7 @@ extern int NEAR my_errno; /* Last error in mysys */
|
|||||||
#define MY_HOLD_ON_ERROR 256 /* my_realloc() ; Return old ptr on error */
|
#define MY_HOLD_ON_ERROR 256 /* my_realloc() ; Return old ptr on error */
|
||||||
#define MY_DONT_OVERWRITE_FILE 2048 /* my_copy: Don't overwrite file */
|
#define MY_DONT_OVERWRITE_FILE 2048 /* my_copy: Don't overwrite file */
|
||||||
#define MY_THREADSAFE 2048 /* my_seek(): lock fd mutex */
|
#define MY_THREADSAFE 2048 /* my_seek(): lock fd mutex */
|
||||||
|
#define MY_SYNC 4096 /* my_copy(): sync dst file */
|
||||||
|
|
||||||
#define MY_CHECK_ERROR 1 /* Params to my_end; Check open-close */
|
#define MY_CHECK_ERROR 1 /* Params to my_end; Check open-close */
|
||||||
#define MY_GIVE_INFO 2 /* Give time info about process*/
|
#define MY_GIVE_INFO 2 /* Give time info about process*/
|
||||||
@ -175,6 +176,16 @@ extern char *my_strndup(const char *from, size_t length,
|
|||||||
#define TRASH(A,B) /* nothing */
|
#define TRASH(A,B) /* nothing */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(ENABLED_DEBUG_SYNC)
|
||||||
|
extern void (*debug_sync_C_callback_ptr)(const char *, size_t);
|
||||||
|
#define DEBUG_SYNC_C(_sync_point_name_) do { \
|
||||||
|
if (debug_sync_C_callback_ptr != NULL) \
|
||||||
|
(*debug_sync_C_callback_ptr)(STRING_WITH_LEN(_sync_point_name_)); } \
|
||||||
|
while(0)
|
||||||
|
#else
|
||||||
|
#define DEBUG_SYNC_C(_sync_point_name_)
|
||||||
|
#endif /* defined(ENABLED_DEBUG_SYNC) */
|
||||||
|
|
||||||
#ifdef HAVE_LARGE_PAGES
|
#ifdef HAVE_LARGE_PAGES
|
||||||
extern uint my_get_large_page_size(void);
|
extern uint my_get_large_page_size(void);
|
||||||
extern uchar * my_large_malloc(size_t size, myf my_flags);
|
extern uchar * my_large_malloc(size_t size, myf my_flags);
|
||||||
@ -727,7 +738,6 @@ extern int wild_compare(const char *str,const char *wildstr,
|
|||||||
extern WF_PACK *wf_comp(char * str);
|
extern WF_PACK *wf_comp(char * str);
|
||||||
extern int wf_test(struct wild_file_pack *wf_pack,const char *name);
|
extern int wf_test(struct wild_file_pack *wf_pack,const char *name);
|
||||||
extern void wf_end(struct wild_file_pack *buffer);
|
extern void wf_end(struct wild_file_pack *buffer);
|
||||||
extern size_t strip_sp(char * str);
|
|
||||||
extern my_bool array_append_string_unique(const char *str,
|
extern my_bool array_append_string_unique(const char *str,
|
||||||
const char **array, size_t size);
|
const char **array, size_t size);
|
||||||
extern void get_date(char * to,int timeflag,time_t use_time);
|
extern void get_date(char * to,int timeflag,time_t use_time);
|
||||||
|
@ -51,7 +51,7 @@ typedef struct st_tree {
|
|||||||
TREE_ELEMENT *root,null_element;
|
TREE_ELEMENT *root,null_element;
|
||||||
TREE_ELEMENT **parents[MAX_TREE_HEIGHT];
|
TREE_ELEMENT **parents[MAX_TREE_HEIGHT];
|
||||||
uint offset_to_key,elements_in_tree,size_of_element;
|
uint offset_to_key,elements_in_tree,size_of_element;
|
||||||
ulong memory_limit, allocated;
|
size_t memory_limit, allocated;
|
||||||
qsort_cmp2 compare;
|
qsort_cmp2 compare;
|
||||||
void *custom_arg;
|
void *custom_arg;
|
||||||
MEM_ROOT mem_root;
|
MEM_ROOT mem_root;
|
||||||
@ -61,7 +61,7 @@ typedef struct st_tree {
|
|||||||
} TREE;
|
} TREE;
|
||||||
|
|
||||||
/* Functions on whole tree */
|
/* Functions on whole tree */
|
||||||
void init_tree(TREE *tree, ulong default_alloc_size, ulong memory_limit,
|
void init_tree(TREE *tree, size_t default_alloc_size, size_t memory_limit,
|
||||||
int size, qsort_cmp2 compare, my_bool with_delete,
|
int size, qsort_cmp2 compare, my_bool with_delete,
|
||||||
tree_element_free free_element, void *custom_arg);
|
tree_element_free free_element, void *custom_arg);
|
||||||
void delete_tree(TREE*);
|
void delete_tree(TREE*);
|
||||||
|
@ -154,6 +154,10 @@ typedef struct st_handler_check_param
|
|||||||
char temp_filename[FN_REFLEN];
|
char temp_filename[FN_REFLEN];
|
||||||
IO_CACHE read_cache;
|
IO_CACHE read_cache;
|
||||||
enum_handler_stats_method stats_method;
|
enum_handler_stats_method stats_method;
|
||||||
|
#ifdef THREAD
|
||||||
|
pthread_mutex_t print_msg_mutex;
|
||||||
|
my_bool need_print_msg_lock;
|
||||||
|
#endif
|
||||||
} HA_CHECK;
|
} HA_CHECK;
|
||||||
|
|
||||||
|
|
||||||
|
@ -558,6 +558,16 @@ unsigned long STDCALL mysql_real_escape_string(MYSQL *mysql,
|
|||||||
char *to,const char *from,
|
char *to,const char *from,
|
||||||
unsigned long length);
|
unsigned long length);
|
||||||
void STDCALL mysql_debug(const char *debug);
|
void STDCALL mysql_debug(const char *debug);
|
||||||
|
char * STDCALL mysql_odbc_escape_string(MYSQL *mysql,
|
||||||
|
char *to,
|
||||||
|
unsigned long to_length,
|
||||||
|
const char *from,
|
||||||
|
unsigned long from_length,
|
||||||
|
void *param,
|
||||||
|
char *
|
||||||
|
(*extend_buffer)
|
||||||
|
(void *, char *to,
|
||||||
|
unsigned long *length));
|
||||||
void STDCALL myodbc_remove_escape(MYSQL *mysql,char *name);
|
void STDCALL myodbc_remove_escape(MYSQL *mysql,char *name);
|
||||||
unsigned int STDCALL mysql_thread_safe(void);
|
unsigned int STDCALL mysql_thread_safe(void);
|
||||||
my_bool STDCALL mysql_embedded(void);
|
my_bool STDCALL mysql_embedded(void);
|
||||||
|
@ -518,6 +518,16 @@ unsigned long mysql_real_escape_string(MYSQL *mysql,
|
|||||||
char *to,const char *from,
|
char *to,const char *from,
|
||||||
unsigned long length);
|
unsigned long length);
|
||||||
void mysql_debug(const char *debug);
|
void mysql_debug(const char *debug);
|
||||||
|
char * mysql_odbc_escape_string(MYSQL *mysql,
|
||||||
|
char *to,
|
||||||
|
unsigned long to_length,
|
||||||
|
const char *from,
|
||||||
|
unsigned long from_length,
|
||||||
|
void *param,
|
||||||
|
char *
|
||||||
|
(*extend_buffer)
|
||||||
|
(void *, char *to,
|
||||||
|
unsigned long *length));
|
||||||
void myodbc_remove_escape(MYSQL *mysql,char *name);
|
void myodbc_remove_escape(MYSQL *mysql,char *name);
|
||||||
unsigned int mysql_thread_safe(void);
|
unsigned int mysql_thread_safe(void);
|
||||||
my_bool mysql_embedded(void);
|
my_bool mysql_embedded(void);
|
||||||
|
@ -564,19 +564,22 @@ typedef struct st_mysql_ftparser_boolean_info
|
|||||||
nothing. See enum_ftparser_mode above.
|
nothing. See enum_ftparser_mode above.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/* TODO: Change the following int to size_t at next ABI update */
|
||||||
|
typedef int mysql_ft_size_t;
|
||||||
|
|
||||||
typedef struct st_mysql_ftparser_param
|
typedef struct st_mysql_ftparser_param
|
||||||
{
|
{
|
||||||
int (*mysql_parse)(struct st_mysql_ftparser_param *,
|
int (*mysql_parse)(struct st_mysql_ftparser_param *,
|
||||||
char *doc, int doc_len);
|
const unsigned char *doc, mysql_ft_size_t doc_len);
|
||||||
int (*mysql_add_word)(struct st_mysql_ftparser_param *,
|
int (*mysql_add_word)(struct st_mysql_ftparser_param *,
|
||||||
char *word, int word_len,
|
const unsigned char *word, mysql_ft_size_t word_len,
|
||||||
MYSQL_FTPARSER_BOOLEAN_INFO *boolean_info);
|
MYSQL_FTPARSER_BOOLEAN_INFO *boolean_info);
|
||||||
void *ftparser_state;
|
void *ftparser_state;
|
||||||
void *mysql_ftparam;
|
void *mysql_ftparam;
|
||||||
struct charset_info_st *cs;
|
struct charset_info_st *cs;
|
||||||
char *doc;
|
const unsigned char *doc;
|
||||||
int length;
|
mysql_ft_size_t length;
|
||||||
int flags;
|
unsigned int flags;
|
||||||
enum enum_ftparser_mode mode;
|
enum enum_ftparser_mode mode;
|
||||||
} MYSQL_FTPARSER_PARAM;
|
} MYSQL_FTPARSER_PARAM;
|
||||||
|
|
||||||
|
@ -70,19 +70,20 @@ typedef struct st_mysql_ftparser_boolean_info
|
|||||||
char prev;
|
char prev;
|
||||||
char *quot;
|
char *quot;
|
||||||
} MYSQL_FTPARSER_BOOLEAN_INFO;
|
} MYSQL_FTPARSER_BOOLEAN_INFO;
|
||||||
|
typedef int mysql_ft_size_t;
|
||||||
typedef struct st_mysql_ftparser_param
|
typedef struct st_mysql_ftparser_param
|
||||||
{
|
{
|
||||||
int (*mysql_parse)(struct st_mysql_ftparser_param *,
|
int (*mysql_parse)(struct st_mysql_ftparser_param *,
|
||||||
char *doc, int doc_len);
|
const unsigned char *doc, mysql_ft_size_t doc_len);
|
||||||
int (*mysql_add_word)(struct st_mysql_ftparser_param *,
|
int (*mysql_add_word)(struct st_mysql_ftparser_param *,
|
||||||
char *word, int word_len,
|
const unsigned char *word, mysql_ft_size_t word_len,
|
||||||
MYSQL_FTPARSER_BOOLEAN_INFO *boolean_info);
|
MYSQL_FTPARSER_BOOLEAN_INFO *boolean_info);
|
||||||
void *ftparser_state;
|
void *ftparser_state;
|
||||||
void *mysql_ftparam;
|
void *mysql_ftparam;
|
||||||
struct charset_info_st *cs;
|
struct charset_info_st *cs;
|
||||||
char *doc;
|
const unsigned char *doc;
|
||||||
int length;
|
mysql_ft_size_t length;
|
||||||
int flags;
|
unsigned int flags;
|
||||||
enum enum_ftparser_mode mode;
|
enum enum_ftparser_mode mode;
|
||||||
} MYSQL_FTPARSER_PARAM;
|
} MYSQL_FTPARSER_PARAM;
|
||||||
struct st_mysql_ftparser
|
struct st_mysql_ftparser
|
||||||
|
@ -63,8 +63,9 @@ extern const char * NEAR globerrs[]; /* my_error_messages is here */
|
|||||||
#define EE_FILENOTFOUND 29
|
#define EE_FILENOTFOUND 29
|
||||||
#define EE_FILE_NOT_CLOSED 30
|
#define EE_FILE_NOT_CLOSED 30
|
||||||
#define EE_CANT_CHMOD 31
|
#define EE_CANT_CHMOD 31
|
||||||
#define EE_CANT_COPY_OWNERSHIP 32
|
#define EE_CANT_SEEK 32
|
||||||
#define EE_ERROR_LAST 32 /* Copy last error nr */
|
#define EE_CANT_COPY_OWNERSHIP 33
|
||||||
|
#define EE_ERROR_LAST 33 /* Copy last error nr */
|
||||||
/* Add error numbers before EE_ERROR_LAST and change it accordingly. */
|
/* Add error numbers before EE_ERROR_LAST and change it accordingly. */
|
||||||
|
|
||||||
/* exit codes for all MySQL programs */
|
/* exit codes for all MySQL programs */
|
||||||
|
@ -44,7 +44,7 @@ enum enum_vio_type
|
|||||||
Vio* vio_new(my_socket sd, enum enum_vio_type type, uint flags);
|
Vio* vio_new(my_socket sd, enum enum_vio_type type, uint flags);
|
||||||
#ifdef __WIN__
|
#ifdef __WIN__
|
||||||
Vio* vio_new_win32pipe(HANDLE hPipe);
|
Vio* vio_new_win32pipe(HANDLE hPipe);
|
||||||
Vio* vio_new_win32shared_memory(NET *net,HANDLE handle_file_map,
|
Vio* vio_new_win32shared_memory(HANDLE handle_file_map,
|
||||||
HANDLE handle_map,
|
HANDLE handle_map,
|
||||||
HANDLE event_server_wrote,
|
HANDLE event_server_wrote,
|
||||||
HANDLE event_server_read,
|
HANDLE event_server_read,
|
||||||
@ -222,7 +222,11 @@ struct st_vio
|
|||||||
HANDLE event_conn_closed;
|
HANDLE event_conn_closed;
|
||||||
size_t shared_memory_remain;
|
size_t shared_memory_remain;
|
||||||
char *shared_memory_pos;
|
char *shared_memory_pos;
|
||||||
NET *net;
|
|
||||||
#endif /* HAVE_SMEM */
|
#endif /* HAVE_SMEM */
|
||||||
|
#ifdef _WIN32
|
||||||
|
OVERLAPPED pipe_overlapped;
|
||||||
|
DWORD read_timeout_millis;
|
||||||
|
DWORD write_timeout_millis;
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
#endif /* vio_violite_h_ */
|
#endif /* vio_violite_h_ */
|
||||||
|
@ -1642,6 +1642,20 @@ mysql_real_escape_string(MYSQL *mysql, char *to,const char *from,
|
|||||||
return (uint) escape_string_for_mysql(mysql->charset, to, 0, from, length);
|
return (uint) escape_string_for_mysql(mysql->charset, to, 0, from, length);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
char * STDCALL
|
||||||
|
mysql_odbc_escape_string(MYSQL *mysql __attribute__((unused)),
|
||||||
|
char *to __attribute__((unused)),
|
||||||
|
ulong to_length __attribute__((unused)),
|
||||||
|
const char *from __attribute__((unused)),
|
||||||
|
ulong from_length __attribute__((unused)),
|
||||||
|
void *param __attribute__((unused)),
|
||||||
|
char * (*extend_buffer)(void *, char *, ulong *)
|
||||||
|
__attribute__((unused)))
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
void STDCALL
|
void STDCALL
|
||||||
myodbc_remove_escape(MYSQL *mysql,char *name)
|
myodbc_remove_escape(MYSQL *mysql,char *name)
|
||||||
{
|
{
|
||||||
@ -2284,7 +2298,7 @@ mysql_stmt_param_metadata(MYSQL_STMT *stmt)
|
|||||||
|
|
||||||
/* Store type of parameter in network buffer. */
|
/* Store type of parameter in network buffer. */
|
||||||
|
|
||||||
static void store_param_type(char **pos, MYSQL_BIND *param)
|
static void store_param_type(uchar **pos, MYSQL_BIND *param)
|
||||||
{
|
{
|
||||||
uint typecode= param->buffer_type | (param->is_unsigned ? 32768 : 0);
|
uint typecode= param->buffer_type | (param->is_unsigned ? 32768 : 0);
|
||||||
int2store(*pos, typecode);
|
int2store(*pos, typecode);
|
||||||
@ -2564,7 +2578,7 @@ int cli_stmt_execute(MYSQL_STMT *stmt)
|
|||||||
that is sent to the server.
|
that is sent to the server.
|
||||||
*/
|
*/
|
||||||
for (param= stmt->params; param < param_end ; param++)
|
for (param= stmt->params; param < param_end ; param++)
|
||||||
store_param_type((char**) &net->write_pos, param);
|
store_param_type(&net->write_pos, param);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (param= stmt->params; param < param_end; param++)
|
for (param= stmt->params; param < param_end; param++)
|
||||||
|
@ -78,6 +78,7 @@ EXPORTS
|
|||||||
mysql_next_result
|
mysql_next_result
|
||||||
mysql_num_fields
|
mysql_num_fields
|
||||||
mysql_num_rows
|
mysql_num_rows
|
||||||
|
mysql_odbc_escape_string
|
||||||
mysql_options
|
mysql_options
|
||||||
mysql_stmt_param_count
|
mysql_stmt_param_count
|
||||||
mysql_stmt_param_metadata
|
mysql_stmt_param_metadata
|
||||||
|
@ -90,8 +90,10 @@ ENDFOREACH(rpath)
|
|||||||
FOREACH (ENGINE_LIB ${MYSQLD_STATIC_ENGINE_LIBS})
|
FOREACH (ENGINE_LIB ${MYSQLD_STATIC_ENGINE_LIBS})
|
||||||
INCLUDE(${CMAKE_SOURCE_DIR}/storage/${plugin_dir_${ENGINE_LIB}}/CMakeLists.txt)
|
INCLUDE(${CMAKE_SOURCE_DIR}/storage/${plugin_dir_${ENGINE_LIB}}/CMakeLists.txt)
|
||||||
STRING(TOUPPER ${ENGINE_LIB} ENGINE_LIB_UPPER)
|
STRING(TOUPPER ${ENGINE_LIB} ENGINE_LIB_UPPER)
|
||||||
|
SET(ENGINE_DIR ${${ENGINE_LIB_UPPER}_DIR})
|
||||||
|
INCLUDE(${CMAKE_SOURCE_DIR}/storage/${ENGINE_DIR}/CMakeLists.txt)
|
||||||
FOREACH(rpath ${${ENGINE_LIB_UPPER}_SOURCES})
|
FOREACH(rpath ${${ENGINE_LIB_UPPER}_SOURCES})
|
||||||
SET(LIB_SOURCES ${LIB_SOURCES} ${CMAKE_SOURCE_DIR}/storage/${plugin_dir_${ENGINE_LIB}}/${rpath})
|
SET(LIB_SOURCES ${LIB_SOURCES} ${CMAKE_SOURCE_DIR}/storage/${ENGINE_DIR}/${rpath})
|
||||||
ENDFOREACH(rpath)
|
ENDFOREACH(rpath)
|
||||||
ENDFOREACH(ENGINE_LIB)
|
ENDFOREACH(ENGINE_LIB)
|
||||||
|
|
||||||
@ -127,6 +129,7 @@ SET(LIBMYSQLD_SOURCES emb_qcache.cc libmysqld.c lib_sql.cc
|
|||||||
../sql/sql_list.cc ../sql/sql_load.cc ../sql/sql_locale.cc
|
../sql/sql_list.cc ../sql/sql_load.cc ../sql/sql_locale.cc
|
||||||
../sql/sql_binlog.cc ../sql/sql_manager.cc ../sql/sql_map.cc
|
../sql/sql_binlog.cc ../sql/sql_manager.cc ../sql/sql_map.cc
|
||||||
../sql/sql_parse.cc ../sql/sql_partition.cc ../sql/sql_plugin.cc
|
../sql/sql_parse.cc ../sql/sql_partition.cc ../sql/sql_plugin.cc
|
||||||
|
../sql/debug_sync.cc
|
||||||
../sql/sql_prepare.cc ../sql/sql_rename.cc ../sql/sql_repl.cc
|
../sql/sql_prepare.cc ../sql/sql_rename.cc ../sql/sql_repl.cc
|
||||||
../sql/sql_select.cc ../sql/sql_servers.cc
|
../sql/sql_select.cc ../sql/sql_servers.cc
|
||||||
../sql/sql_show.cc ../sql/sql_state.c ../sql/sql_string.cc
|
../sql/sql_show.cc ../sql/sql_state.c ../sql/sql_string.cc
|
||||||
@ -152,6 +155,14 @@ ADD_LIBRARY(mysqlserver STATIC ${LIBMYSQLD_SOURCES})
|
|||||||
ADD_DEPENDENCIES(mysqlserver GenServerSource GenError)
|
ADD_DEPENDENCIES(mysqlserver GenServerSource GenError)
|
||||||
TARGET_LINK_LIBRARIES(mysqlserver)
|
TARGET_LINK_LIBRARIES(mysqlserver)
|
||||||
|
|
||||||
|
# Add any additional libraries requested by engine(s)
|
||||||
|
FOREACH (ENGINE_LIB ${MYSQLD_STATIC_ENGINE_LIBS})
|
||||||
|
STRING(TOUPPER ${ENGINE_LIB} ENGINE_LIB_UPPER)
|
||||||
|
IF(${ENGINE_LIB_UPPER}_LIBS)
|
||||||
|
TARGET_LINK_LIBRARIES(mysqlserver ${${ENGINE_LIB_UPPER}_LIBS})
|
||||||
|
ENDIF(${ENGINE_LIB_UPPER}_LIBS)
|
||||||
|
ENDFOREACH(ENGINE_LIB)
|
||||||
|
|
||||||
ADD_LIBRARY(libmysqld SHARED cmake_dummy.c libmysqld.def)
|
ADD_LIBRARY(libmysqld SHARED cmake_dummy.c libmysqld.def)
|
||||||
ADD_DEPENDENCIES(libmysqld mysqlserver)
|
ADD_DEPENDENCIES(libmysqld mysqlserver)
|
||||||
TARGET_LINK_LIBRARIES(libmysqld mysqlserver wsock32)
|
TARGET_LINK_LIBRARIES(libmysqld mysqlserver wsock32)
|
||||||
|
@ -74,6 +74,7 @@ sqlsources = derror.cc field.cc field_conv.cc strfunc.cc filesort.cc \
|
|||||||
sp_head.cc sp_pcontext.cc sp.cc sp_cache.cc sp_rcontext.cc \
|
sp_head.cc sp_pcontext.cc sp.cc sp_cache.cc sp_rcontext.cc \
|
||||||
parse_file.cc sql_view.cc sql_trigger.cc my_decimal.cc \
|
parse_file.cc sql_view.cc sql_trigger.cc my_decimal.cc \
|
||||||
rpl_filter.cc sql_partition.cc sql_builtin.cc sql_plugin.cc \
|
rpl_filter.cc sql_partition.cc sql_builtin.cc sql_plugin.cc \
|
||||||
|
debug_sync.cc \
|
||||||
sql_tablespace.cc \
|
sql_tablespace.cc \
|
||||||
rpl_injector.cc my_user.c partition_info.cc \
|
rpl_injector.cc my_user.c partition_info.cc \
|
||||||
sql_servers.cc event_parse_data.cc opt_table_elimination.cc
|
sql_servers.cc event_parse_data.cc opt_table_elimination.cc
|
||||||
|
@ -142,6 +142,8 @@ emb_advanced_command(MYSQL *mysql, enum enum_server_command command,
|
|||||||
if (!skip_check)
|
if (!skip_check)
|
||||||
result= thd->is_error() ? -1 : 0;
|
result= thd->is_error() ? -1 : 0;
|
||||||
|
|
||||||
|
thd->mysys_var= 0;
|
||||||
|
|
||||||
#if defined(ENABLED_PROFILING) && defined(COMMUNITY_SERVER)
|
#if defined(ENABLED_PROFILING) && defined(COMMUNITY_SERVER)
|
||||||
thd->profiling.finish_current_query();
|
thd->profiling.finish_current_query();
|
||||||
#endif
|
#endif
|
||||||
@ -634,6 +636,7 @@ void *create_embedded_thd(int client_flag)
|
|||||||
|
|
||||||
thread_count++;
|
thread_count++;
|
||||||
threads.append(thd);
|
threads.append(thd);
|
||||||
|
thd->mysys_var= 0;
|
||||||
return thd;
|
return thd;
|
||||||
err:
|
err:
|
||||||
delete(thd);
|
delete(thd);
|
||||||
|
@ -164,6 +164,7 @@ mysql_real_connect(MYSQL *mysql,const char *host, const char *user,
|
|||||||
port=0;
|
port=0;
|
||||||
unix_socket=0;
|
unix_socket=0;
|
||||||
|
|
||||||
|
client_flag|=mysql->options.client_flag;
|
||||||
/* Send client information for access check */
|
/* Send client information for access check */
|
||||||
client_flag|=CLIENT_CAPABILITIES;
|
client_flag|=CLIENT_CAPABILITIES;
|
||||||
if (client_flag & CLIENT_MULTI_STATEMENTS)
|
if (client_flag & CLIENT_MULTI_STATEMENTS)
|
||||||
|
@ -50,6 +50,7 @@ EXPORTS
|
|||||||
mysql_next_result
|
mysql_next_result
|
||||||
mysql_num_fields
|
mysql_num_fields
|
||||||
mysql_num_rows
|
mysql_num_rows
|
||||||
|
mysql_odbc_escape_string
|
||||||
mysql_options
|
mysql_options
|
||||||
mysql_ping
|
mysql_ping
|
||||||
mysql_query
|
mysql_query
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBcomp_err\fR
|
.\" Title: \fBcomp_err\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBCOMP_ERR\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBCOMP_ERR\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -91,7 +91,8 @@ Display a help message and exit\&.
|
|||||||
.\}
|
.\}
|
||||||
.\" comp_err: charset option
|
.\" comp_err: charset option
|
||||||
.\" charset option: comp_err
|
.\" charset option: comp_err
|
||||||
\fB\-\-charset=\fR\fB\fIpath\fR\fR\fB, \-C \fR\fB\fIpath\fR\fR
|
\fB\-\-charset=\fR\fB\fIpath\fR\fR,
|
||||||
|
\fB\-C \fR\fB\fIpath\fR\fR
|
||||||
.sp
|
.sp
|
||||||
The character set directory\&. The default is
|
The character set directory\&. The default is
|
||||||
\&.\&./sql/share/charsets\&.
|
\&.\&./sql/share/charsets\&.
|
||||||
@ -107,7 +108,8 @@ The character set directory\&. The default is
|
|||||||
.\}
|
.\}
|
||||||
.\" comp_err: debug option
|
.\" comp_err: debug option
|
||||||
.\" debug option: comp_err
|
.\" debug option: comp_err
|
||||||
\fB\-\-debug=\fR\fB\fIdebug_options\fR\fR\fB, \-# \fR\fB\fIdebug_options\fR\fR
|
\fB\-\-debug=\fR\fB\fIdebug_options\fR\fR,
|
||||||
|
\fB\-# \fR\fB\fIdebug_options\fR\fR
|
||||||
.sp
|
.sp
|
||||||
Write a debugging log\&. A typical
|
Write a debugging log\&. A typical
|
||||||
\fIdebug_options\fR
|
\fIdebug_options\fR
|
||||||
@ -142,7 +144,8 @@ Print some debugging information when the program exits\&.
|
|||||||
.\}
|
.\}
|
||||||
.\" comp_err: header_file option
|
.\" comp_err: header_file option
|
||||||
.\" header_file option: comp_err
|
.\" header_file option: comp_err
|
||||||
\fB\-\-header_file=\fR\fB\fIfile_name\fR\fR\fB, \-H \fR\fB\fIfile_name\fR\fR
|
\fB\-\-header_file=\fR\fB\fIfile_name\fR\fR,
|
||||||
|
\fB\-H \fR\fB\fIfile_name\fR\fR
|
||||||
.sp
|
.sp
|
||||||
The name of the error header file\&. The default is
|
The name of the error header file\&. The default is
|
||||||
mysqld_error\&.h\&.
|
mysqld_error\&.h\&.
|
||||||
@ -158,7 +161,8 @@ mysqld_error\&.h\&.
|
|||||||
.\}
|
.\}
|
||||||
.\" comp_err: in_file option
|
.\" comp_err: in_file option
|
||||||
.\" in_file option: comp_err
|
.\" in_file option: comp_err
|
||||||
\fB\-\-in_file=\fR\fB\fIfile_name\fR\fR\fB, \-F \fR\fB\fIfile_name\fR\fR
|
\fB\-\-in_file=\fR\fB\fIfile_name\fR\fR,
|
||||||
|
\fB\-F \fR\fB\fIfile_name\fR\fR
|
||||||
.sp
|
.sp
|
||||||
The name of the input file\&. The default is
|
The name of the input file\&. The default is
|
||||||
\&.\&./sql/share/errmsg\&.txt\&.
|
\&.\&./sql/share/errmsg\&.txt\&.
|
||||||
@ -174,7 +178,8 @@ The name of the input file\&. The default is
|
|||||||
.\}
|
.\}
|
||||||
.\" comp_err: name_file option
|
.\" comp_err: name_file option
|
||||||
.\" name_file option: comp_err
|
.\" name_file option: comp_err
|
||||||
\fB\-\-name_file=\fR\fB\fIfile_name\fR\fR\fB, \-N \fR\fB\fIfile_name\fR\fR
|
\fB\-\-name_file=\fR\fB\fIfile_name\fR\fR,
|
||||||
|
\fB\-N \fR\fB\fIfile_name\fR\fR
|
||||||
.sp
|
.sp
|
||||||
The name of the error name file\&. The default is
|
The name of the error name file\&. The default is
|
||||||
mysqld_ername\&.h\&.
|
mysqld_ername\&.h\&.
|
||||||
@ -190,7 +195,8 @@ mysqld_ername\&.h\&.
|
|||||||
.\}
|
.\}
|
||||||
.\" comp_err: out_dir option
|
.\" comp_err: out_dir option
|
||||||
.\" out_dir option: comp_err
|
.\" out_dir option: comp_err
|
||||||
\fB\-\-out_dir=\fR\fB\fIpath\fR\fR\fB, \-D \fR\fB\fIpath\fR\fR
|
\fB\-\-out_dir=\fR\fB\fIpath\fR\fR,
|
||||||
|
\fB\-D \fR\fB\fIpath\fR\fR
|
||||||
.sp
|
.sp
|
||||||
The name of the output base directory\&. The default is
|
The name of the output base directory\&. The default is
|
||||||
\&.\&./sql/share/\&.
|
\&.\&./sql/share/\&.
|
||||||
@ -206,7 +212,8 @@ The name of the output base directory\&. The default is
|
|||||||
.\}
|
.\}
|
||||||
.\" comp_err: out_file option
|
.\" comp_err: out_file option
|
||||||
.\" out_file option: comp_err
|
.\" out_file option: comp_err
|
||||||
\fB\-\-out_file=\fR\fB\fIfile_name\fR\fR\fB, \-O \fR\fB\fIfile_name\fR\fR
|
\fB\-\-out_file=\fR\fB\fIfile_name\fR\fR,
|
||||||
|
\fB\-O \fR\fB\fIfile_name\fR\fR
|
||||||
.sp
|
.sp
|
||||||
The name of the output file\&. The default is
|
The name of the output file\&. The default is
|
||||||
errmsg\&.sys\&.
|
errmsg\&.sys\&.
|
||||||
@ -222,7 +229,8 @@ errmsg\&.sys\&.
|
|||||||
.\}
|
.\}
|
||||||
.\" comp_err: statefile option
|
.\" comp_err: statefile option
|
||||||
.\" statefile option: comp_err
|
.\" statefile option: comp_err
|
||||||
\fB\-\-statefile=\fR\fB\fIfile_name\fR\fR\fB, \-S \fR\fB\fIfile_name\fR\fR
|
\fB\-\-statefile=\fR\fB\fIfile_name\fR\fR,
|
||||||
|
\fB\-S \fR\fB\fIfile_name\fR\fR
|
||||||
.sp
|
.sp
|
||||||
The name for the SQLSTATE header file\&. The default is
|
The name for the SQLSTATE header file\&. The default is
|
||||||
sql_state\&.h\&.
|
sql_state\&.h\&.
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBinnochecksum\fR
|
.\" Title: \fBinnochecksum\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBINNOCHECKSUM\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBINNOCHECKSUM\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -29,7 +29,20 @@ innochecksum \- offline InnoDB file checksum utility
|
|||||||
\fBinnochecksum\fR
|
\fBinnochecksum\fR
|
||||||
prints checksums for
|
prints checksums for
|
||||||
InnoDB
|
InnoDB
|
||||||
files\&.
|
files\&. This tool reads an
|
||||||
|
InnoDB
|
||||||
|
tablespace file, calculates the checksum for each page, compares the calculated checksum to the stored checksum, and reports mismatches, which indicate damaged pages\&. It was originally developed to speed up verifying the integrity of tablespace files after power outages but can also be used after file copies\&. Because checksum mismatches will cause
|
||||||
|
InnoDB
|
||||||
|
to deliberately shut down a running server, it can be preferable to use this tool rather than waiting for a server in production usage to encounter the damaged pages\&.
|
||||||
|
.PP
|
||||||
|
\fBinnochecksum\fR
|
||||||
|
cannot be used on tablespace files that the server already has open\&. For such files, you should use
|
||||||
|
CHECK TABLE
|
||||||
|
to check tables within the tablespace\&.
|
||||||
|
.PP
|
||||||
|
If checksum mismatches are found, you would normally restore the tablespace from backup or start the server and attempt to use
|
||||||
|
\fBmysqldump\fR
|
||||||
|
to make a backup of the tables within the tablespace\&.
|
||||||
.PP
|
.PP
|
||||||
Invoke
|
Invoke
|
||||||
\fBinnochecksum\fR
|
\fBinnochecksum\fR
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmake_win_bin_dist\fR
|
.\" Title: \fBmake_win_bin_dist\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMAKE_WIN_BIN_DIST" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMAKE_WIN_BIN_DIST" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmsql2mysql\fR
|
.\" Title: \fBmsql2mysql\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMSQL2MYSQL\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMSQL2MYSQL\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmy_print_defaults\fR
|
.\" Title: \fBmy_print_defaults\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMY_PRINT_DEFAULTS" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMY_PRINT_DEFAULTS" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -100,7 +100,8 @@ Read only the given option file\&.
|
|||||||
.\}
|
.\}
|
||||||
.\" my_print_defaults: debug option
|
.\" my_print_defaults: debug option
|
||||||
.\" debug option: my_print_defaults
|
.\" debug option: my_print_defaults
|
||||||
\fB\-\-debug=\fR\fB\fIdebug_options\fR\fR\fB, \-# \fR\fB\fIdebug_options\fR\fR
|
\fB\-\-debug=\fR\fB\fIdebug_options\fR\fR,
|
||||||
|
\fB\-# \fR\fB\fIdebug_options\fR\fR
|
||||||
.sp
|
.sp
|
||||||
Write a debugging log\&. A typical
|
Write a debugging log\&. A typical
|
||||||
\fIdebug_options\fR
|
\fIdebug_options\fR
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmyisam_ftdump\fR
|
.\" Title: \fBmyisam_ftdump\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYISAM_FTDUMP\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYISAM_FTDUMP\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
1135
man/myisamchk.1
1135
man/myisamchk.1
File diff suppressed because it is too large
Load Diff
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmyisamlog\fR
|
.\" Title: \fBmyisamlog\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYISAMLOG\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYISAMLOG\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmyisampack\fR
|
.\" Title: \fBmyisampack\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYISAMPACK\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYISAMPACK\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -652,9 +652,11 @@ After join
|
|||||||
The number of distinct Huffman trees left after joining trees to save some header space\&.
|
The number of distinct Huffman trees left after joining trees to save some header space\&.
|
||||||
.RE
|
.RE
|
||||||
.PP
|
.PP
|
||||||
After a table has been compressed,
|
After a table has been compressed, the
|
||||||
|
Field
|
||||||
|
lines displayed by
|
||||||
\fBmyisamchk \-dvv\fR
|
\fBmyisamchk \-dvv\fR
|
||||||
prints additional information about each column:
|
include additional information about each column:
|
||||||
.sp
|
.sp
|
||||||
.RS 4
|
.RS 4
|
||||||
.ie n \{\
|
.ie n \{\
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql-stress-test.pl\fR
|
.\" Title: \fBmysql-stress-test.pl\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/08/2009
|
.\" Date: 10/29/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL
|
.\" Source: MySQL
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL\-STRESS\-TE" "1" "08/08/2009" "MySQL" "MySQL Database System"
|
.TH "\FBMYSQL\-STRESS\-TE" "1" "10/29/2009" "MySQL" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql-test-run.pl\fR
|
.\" Title: \fBmysql-test-run.pl\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/08/2009
|
.\" Date: 10/29/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL
|
.\" Source: MySQL
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL\-TEST\-RUN\" "1" "08/08/2009" "MySQL" "MySQL Database System"
|
.TH "\FBMYSQL\-TEST\-RUN\" "1" "10/29/2009" "MySQL" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -700,6 +700,9 @@ Specify a file that contains a list of test cases that should be displayed with
|
|||||||
code rather than
|
code rather than
|
||||||
[ fail ]
|
[ fail ]
|
||||||
if they fail\&. This option was added in MySQL 5\&.1\&.33/6\&.0\&.11\&.
|
if they fail\&. This option was added in MySQL 5\&.1\&.33/6\&.0\&.11\&.
|
||||||
|
.sp
|
||||||
|
For an example of a file that might be specified via this option, see
|
||||||
|
mysql\-test/collections/default\&.experimental\&.
|
||||||
.RE
|
.RE
|
||||||
.sp
|
.sp
|
||||||
.RS 4
|
.RS 4
|
||||||
@ -1132,6 +1135,26 @@ not to generate a timing file\&.
|
|||||||
.sp -1
|
.sp -1
|
||||||
.IP \(bu 2.3
|
.IP \(bu 2.3
|
||||||
.\}
|
.\}
|
||||||
|
.\" mysql-test-run.pl: parallel option
|
||||||
|
.\" parallel option: mysql-test-run.pl
|
||||||
|
\fB\-\-parallel={\fR\fB\fIN\fR\fR\fB|auto}\fR
|
||||||
|
.sp
|
||||||
|
Run tests using
|
||||||
|
\fIN\fR
|
||||||
|
parallel threads\&. By default, 1 thread is used\&. Use
|
||||||
|
\fB\-\-parallel=auto\fR
|
||||||
|
for auto\-setting of
|
||||||
|
\fIN\fR\&. This option was added in MySQL 5\&.1\&.36\&.
|
||||||
|
.RE
|
||||||
|
.sp
|
||||||
|
.RS 4
|
||||||
|
.ie n \{\
|
||||||
|
\h'-04'\(bu\h'+03'\c
|
||||||
|
.\}
|
||||||
|
.el \{\
|
||||||
|
.sp -1
|
||||||
|
.IP \(bu 2.3
|
||||||
|
.\}
|
||||||
.\" mysql-test-run.pl: ps-protocol option
|
.\" mysql-test-run.pl: ps-protocol option
|
||||||
.\" ps-protocol option: mysql-test-run.pl
|
.\" ps-protocol option: mysql-test-run.pl
|
||||||
\fB\-\-ps\-protocol\fR
|
\fB\-\-ps\-protocol\fR
|
||||||
|
38
man/mysql.1
38
man/mysql.1
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql\fR
|
.\" Title: \fBmysql\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -334,8 +334,18 @@ to display result set metadata\&.
|
|||||||
.sp
|
.sp
|
||||||
Use
|
Use
|
||||||
\fIcharset_name\fR
|
\fIcharset_name\fR
|
||||||
as the default character set\&. See
|
as the default character set for the client and connection\&.
|
||||||
Section\ \&9.2, \(lqThe Character Set Used for Data and Sorting\(rq\&.
|
.sp
|
||||||
|
A common issue that can occur when the operating system uses
|
||||||
|
utf8
|
||||||
|
or another multi\-byte character set is that output from the
|
||||||
|
\fBmysql\fR
|
||||||
|
client is formatted incorrectly, due to the fact that the MySQL client uses the
|
||||||
|
latin1
|
||||||
|
character set by default\&. You can usually fix such issues by using this option to force the client to use the system character set instead\&.
|
||||||
|
.sp
|
||||||
|
See
|
||||||
|
Section\ \&9.2, \(lqThe Character Set Used for Data and Sorting\(rq, for more information\&.
|
||||||
.RE
|
.RE
|
||||||
.sp
|
.sp
|
||||||
.RS 4
|
.RS 4
|
||||||
@ -648,7 +658,7 @@ PAGER
|
|||||||
environment variable\&. Valid pagers are
|
environment variable\&. Valid pagers are
|
||||||
\fBless\fR,
|
\fBless\fR,
|
||||||
\fBmore\fR,
|
\fBmore\fR,
|
||||||
\fBcat [> filename]\fR, and so forth\&. This option works only on Unix\&. It does not work in batch mode\&. To disable paging, use
|
\fBcat [> filename]\fR, and so forth\&. This option works only on Unix and only in interactive mode\&. To disable paging, use
|
||||||
\fB\-\-skip\-pager\fR\&.
|
\fB\-\-skip\-pager\fR\&.
|
||||||
the section called \(lqMYSQL COMMANDS\(rq, discusses output paging further\&.
|
the section called \(lqMYSQL COMMANDS\(rq, discusses output paging further\&.
|
||||||
.RE
|
.RE
|
||||||
@ -1026,7 +1036,7 @@ Display output in table format\&. This is the default for interactive use, but c
|
|||||||
.\" tee option: mysql
|
.\" tee option: mysql
|
||||||
\fB\-\-tee=\fR\fB\fIfile_name\fR\fR
|
\fB\-\-tee=\fR\fB\fIfile_name\fR\fR
|
||||||
.sp
|
.sp
|
||||||
Append a copy of output to the given file\&. This option does not work in batch mode\&.
|
Append a copy of output to the given file\&. This option works only in interactive mode\&.
|
||||||
the section called \(lqMYSQL COMMANDS\(rq, discusses tee files further\&.
|
the section called \(lqMYSQL COMMANDS\(rq, discusses tee files further\&.
|
||||||
.RE
|
.RE
|
||||||
.sp
|
.sp
|
||||||
@ -1523,7 +1533,7 @@ is set to something other than the default of
|
|||||||
\(lq;\(rq, instances of that character are sent to the server without interpretation\&. However, the server itself still interprets
|
\(lq;\(rq, instances of that character are sent to the server without interpretation\&. However, the server itself still interprets
|
||||||
\(lq;\(rq
|
\(lq;\(rq
|
||||||
as a statement delimiter and processes statements accordingly\&. This behavior on the server side comes into play for multiple\-statement execution (see
|
as a statement delimiter and processes statements accordingly\&. This behavior on the server side comes into play for multiple\-statement execution (see
|
||||||
Section\ \&21.10.12, \(lqC API Support for Multiple Statement Execution\(rq), and for parsing the body of stored procedures and functions, triggers, and events (see
|
Section\ \&21.9.12, \(lqC API Support for Multiple Statement Execution\(rq), and for parsing the body of stored procedures and functions, triggers, and events (see
|
||||||
Section\ \&19.1, \(lqDefining Stored Programs\(rq)\&.
|
Section\ \&19.1, \(lqDefining Stored Programs\(rq)\&.
|
||||||
.RE
|
.RE
|
||||||
.sp
|
.sp
|
||||||
@ -1680,7 +1690,7 @@ option when you invoke
|
|||||||
\fBmysql\fR
|
\fBmysql\fR
|
||||||
checks the value of the
|
checks the value of the
|
||||||
PAGER
|
PAGER
|
||||||
environment variable and sets the pager to that\&.
|
environment variable and sets the pager to that\&. Pager functionality works only in interactive mode\&.
|
||||||
.sp
|
.sp
|
||||||
Output paging can be enabled interactively with the
|
Output paging can be enabled interactively with the
|
||||||
\fBpager\fR
|
\fBpager\fR
|
||||||
@ -1853,7 +1863,7 @@ By using the
|
|||||||
option when you invoke
|
option when you invoke
|
||||||
\fBmysql\fR, you can log statements and their output\&. All the data displayed on the screen is appended into a given file\&. This can be very useful for debugging purposes also\&.
|
\fBmysql\fR, you can log statements and their output\&. All the data displayed on the screen is appended into a given file\&. This can be very useful for debugging purposes also\&.
|
||||||
\fBmysql\fR
|
\fBmysql\fR
|
||||||
flushes results to the file after each statement, just before it prints its next prompt\&.
|
flushes results to the file after each statement, just before it prints its next prompt\&. Tee functionality works only in interactive mode\&.
|
||||||
.sp
|
.sp
|
||||||
You can enable this feature interactively with the
|
You can enable this feature interactively with the
|
||||||
\fBtee\fR
|
\fBtee\fR
|
||||||
@ -2334,7 +2344,7 @@ prompt=(\e\eu@\e\eh) [\e\ed]>\e\e_
|
|||||||
.sp
|
.sp
|
||||||
In this example, note that the backslashes are doubled\&. If you set the prompt using the
|
In this example, note that the backslashes are doubled\&. If you set the prompt using the
|
||||||
prompt
|
prompt
|
||||||
option in an option file, it is advisable to double the backslashes when using the special prompt options\&. There is some overlap in the set of allowable prompt options and the set of special escape sequences that are recognized in option files\&. (These sequences are listed in
|
option in an option file, it is advisable to double the backslashes when using the special prompt options\&. There is some overlap in the set of allowable prompt options and the set of special escape sequences that are recognized in option files\&. (The rules for escape sequences in option files are listed in
|
||||||
Section\ \&4.2.3.3, \(lqUsing Option Files\(rq\&.) The overlap may cause you problems if you use single backslashes\&. For example,
|
Section\ \&4.2.3.3, \(lqUsing Option Files\(rq\&.) The overlap may cause you problems if you use single backslashes\&. For example,
|
||||||
\es
|
\es
|
||||||
is interpreted as a space rather than as the current seconds value\&. The following example shows how to define a prompt within an option file to include the current time in
|
is interpreted as a space rather than as the current seconds value\&. The following example shows how to define a prompt within an option file to include the current time in
|
||||||
@ -2586,6 +2596,12 @@ SELECT \'<info_to_display>\' AS \' \';
|
|||||||
The statement shown outputs
|
The statement shown outputs
|
||||||
<info_to_display>\&.
|
<info_to_display>\&.
|
||||||
.PP
|
.PP
|
||||||
|
You can also invoke
|
||||||
|
\fBmysql\fR
|
||||||
|
with the
|
||||||
|
\fB\-\-verbose\fR
|
||||||
|
option, which causes each statement to be displayed before the result that it produces\&.
|
||||||
|
.PP
|
||||||
As of MySQL 5\&.1\&.23,
|
As of MySQL 5\&.1\&.23,
|
||||||
\fBmysql\fR
|
\fBmysql\fR
|
||||||
ignores Unicode byte order mark (BOM) characters at the beginning of input files\&. Previously, it read them and sent them to the server, resulting in a syntax error\&. Presence of a BOM does not cause
|
ignores Unicode byte order mark (BOM) characters at the beginning of input files\&. Previously, it read them and sent them to the server, resulting in a syntax error\&. Presence of a BOM does not cause
|
||||||
@ -2785,7 +2801,7 @@ client with the
|
|||||||
option\&.
|
option\&.
|
||||||
.PP
|
.PP
|
||||||
For more information about auto\-reconnect and its effect on state information when a reconnection occurs, see
|
For more information about auto\-reconnect and its effect on state information when a reconnection occurs, see
|
||||||
Section\ \&21.10.11, \(lqControlling Automatic Reconnection Behavior\(rq\&.
|
Section\ \&21.9.11, \(lqControlling Automatic Reconnection Behavior\(rq\&.
|
||||||
.SH "COPYRIGHT"
|
.SH "COPYRIGHT"
|
||||||
.br
|
.br
|
||||||
.PP
|
.PP
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql.server\fR
|
.\" Title: \fBmysql.server\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL\&.SERVER\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL\&.SERVER\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -40,7 +40,7 @@ script will be installed in the
|
|||||||
/etc/init\&.d
|
/etc/init\&.d
|
||||||
directory with the name
|
directory with the name
|
||||||
mysql\&. You need not install it manually\&. See
|
mysql\&. You need not install it manually\&. See
|
||||||
Section\ \&2.4, \(lqInstalling MySQL from RPM Packages on Linux\(rq, for more information on the Linux RPM packages\&.
|
Section\ \&2.6.1, \(lqInstalling MySQL from RPM Packages on Linux\(rq, for more information on the Linux RPM packages\&.
|
||||||
.PP
|
.PP
|
||||||
Some vendors provide RPM packages that install a startup script under a different name such as
|
Some vendors provide RPM packages that install a startup script under a different name such as
|
||||||
\fBmysqld\fR\&.
|
\fBmysqld\fR\&.
|
||||||
@ -48,7 +48,7 @@ Some vendors provide RPM packages that install a startup script under a differen
|
|||||||
If you install MySQL from a source distribution or using a binary distribution format that does not install
|
If you install MySQL from a source distribution or using a binary distribution format that does not install
|
||||||
\fBmysql\&.server\fR
|
\fBmysql\&.server\fR
|
||||||
automatically, you can install it manually\&. Instructions are provided in
|
automatically, you can install it manually\&. Instructions are provided in
|
||||||
Section\ \&2.11.2.2, \(lqStarting and Stopping MySQL Automatically\(rq\&.
|
Section\ \&2.13.1.2, \(lqStarting and Stopping MySQL Automatically\(rq\&.
|
||||||
.PP
|
.PP
|
||||||
\fBmysql\&.server\fR
|
\fBmysql\&.server\fR
|
||||||
reads options from the
|
reads options from the
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_client_test\fR
|
.\" Title: \fBmysql_client_test\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/08/2009
|
.\" Date: 10/29/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL
|
.\" Source: MySQL
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_CLIENT_TEST" "1" "08/08/2009" "MySQL" "MySQL Database System"
|
.TH "\FBMYSQL_CLIENT_TEST" "1" "10/29/2009" "MySQL" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_config\fR
|
.\" Title: \fBmysql_config\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_CONFIG\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_CONFIG\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_convert_table_format\fR
|
.\" Title: \fBmysql_convert_table_format\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_CONVERT_TAB" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_CONVERT_TAB" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_find_rows\fR
|
.\" Title: \fBmysql_find_rows\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_FIND_ROWS\F" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_FIND_ROWS\F" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_fix_extensions\fR
|
.\" Title: \fBmysql_fix_extensions\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_FIX_EXTENSI" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_FIX_EXTENSI" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_fix_privilege_tables\fR
|
.\" Title: \fBmysql_fix_privilege_tables\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_FIX_PRIVILE" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_FIX_PRIVILE" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_install_db\fR
|
.\" Title: \fBmysql_install_db\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_INSTALL_DB\" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_INSTALL_DB\" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -81,7 +81,7 @@ with the
|
|||||||
and
|
and
|
||||||
\fB\-\-skip\-grant\-tables\fR
|
\fB\-\-skip\-grant\-tables\fR
|
||||||
options (see
|
options (see
|
||||||
Section\ \&2.10.2, \(lqTypical configure Options\(rq)\&. If MySQL was configured with the
|
Section\ \&2.3.2, \(lqTypical configure Options\(rq)\&. If MySQL was configured with the
|
||||||
\fB\-\-disable\-grant\-options\fR
|
\fB\-\-disable\-grant\-options\fR
|
||||||
option,
|
option,
|
||||||
\fB\-\-bootstrap\fR
|
\fB\-\-bootstrap\fR
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_secure_installation\fR
|
.\" Title: \fBmysql_secure_installation\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_SECURE_INST" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_SECURE_INST" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_setpermission\fR
|
.\" Title: \fBmysql_setpermission\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_SETPERMISSI" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_SETPERMISSI" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_tzinfo_to_sql\fR
|
.\" Title: \fBmysql_tzinfo_to_sql\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_TZINFO_TO_S" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_TZINFO_TO_S" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_upgrade\fR
|
.\" Title: \fBmysql_upgrade\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_UPGRADE\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_UPGRADE\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -41,7 +41,7 @@ script, which should no longer be used\&.
|
|||||||
If a table is found to have a possible incompatibility,
|
If a table is found to have a possible incompatibility,
|
||||||
\fBmysql_upgrade\fR
|
\fBmysql_upgrade\fR
|
||||||
performs a table check\&. If any problems are found, a table repair is attempted\&. If the table cannot be repaired, see
|
performs a table check\&. If any problems are found, a table repair is attempted\&. If the table cannot be repaired, see
|
||||||
Section\ \&2.12.4, \(lqRebuilding or Repairing Tables or Indexes\(rq
|
Section\ \&2.4.4, \(lqRebuilding or Repairing Tables or Indexes\(rq
|
||||||
for manual table repair strategies\&.
|
for manual table repair strategies\&.
|
||||||
.if n \{\
|
.if n \{\
|
||||||
.sp
|
.sp
|
||||||
@ -59,11 +59,11 @@ for manual table repair strategies\&.
|
|||||||
You should always back up your current MySQL installation
|
You should always back up your current MySQL installation
|
||||||
\fIbefore\fR
|
\fIbefore\fR
|
||||||
performing an upgrade\&. See
|
performing an upgrade\&. See
|
||||||
Section\ \&6.1, \(lqDatabase Backups\(rq\&.
|
Section\ \&6.1, \(lqDatabase Backup Methods\(rq\&.
|
||||||
.PP
|
.PP
|
||||||
Some upgrade incompatibilities may require special handling before you upgrade your MySQL installation and run
|
Some upgrade incompatibilities may require special handling before you upgrade your MySQL installation and run
|
||||||
\fBmysql_upgrade\fR\&. See
|
\fBmysql_upgrade\fR\&. See
|
||||||
Section\ \&2.12.1, \(lqUpgrading MySQL\(rq, for instructions on determining whether any such incompatibilities apply to your installation and how to handle them\&.
|
Section\ \&2.4.1, \(lqUpgrading MySQL\(rq, for instructions on determining whether any such incompatibilities apply to your installation and how to handle them\&.
|
||||||
.sp .5v
|
.sp .5v
|
||||||
.RE
|
.RE
|
||||||
.PP
|
.PP
|
||||||
@ -189,7 +189,7 @@ If you install MySQL from RPM packages on Linux, you must install the server and
|
|||||||
\fBmysql_upgrade\fR
|
\fBmysql_upgrade\fR
|
||||||
is included in the server RPM but requires the client RPM because the latter includes
|
is included in the server RPM but requires the client RPM because the latter includes
|
||||||
\fBmysqlcheck\fR\&. (See
|
\fBmysqlcheck\fR\&. (See
|
||||||
Section\ \&2.4, \(lqInstalling MySQL from RPM Packages on Linux\(rq\&.)
|
Section\ \&2.6.1, \(lqInstalling MySQL from RPM Packages on Linux\(rq\&.)
|
||||||
.PP
|
.PP
|
||||||
In MySQL 5\&.1\&.7,
|
In MySQL 5\&.1\&.7,
|
||||||
\fBmysql_upgrade \fR
|
\fBmysql_upgrade \fR
|
||||||
@ -352,6 +352,26 @@ root\&.
|
|||||||
.sp
|
.sp
|
||||||
Verbose mode\&. Print more information about what the program does\&.
|
Verbose mode\&. Print more information about what the program does\&.
|
||||||
.RE
|
.RE
|
||||||
|
.sp
|
||||||
|
.RS 4
|
||||||
|
.ie n \{\
|
||||||
|
\h'-04'\(bu\h'+03'\c
|
||||||
|
.\}
|
||||||
|
.el \{\
|
||||||
|
.sp -1
|
||||||
|
.IP \(bu 2.3
|
||||||
|
.\}
|
||||||
|
.\" mysql_upgrade: write-binlog option
|
||||||
|
.\" write-binlog option: mysql_upgrade
|
||||||
|
\fB\-\-write\-binlog\fR
|
||||||
|
.sp
|
||||||
|
Cause binary logging to be enabled while
|
||||||
|
\fBmysql_upgrade\fR
|
||||||
|
runs\&. This is the default behavior; to disable binary logging during the upgrade, use the inverse of this option (that is, start the program with
|
||||||
|
\fB\-\-skip\-write\-binlog\fR)\&.
|
||||||
|
.sp
|
||||||
|
This option was introduced in MySQL 5\&.1\&.40\&.
|
||||||
|
.RE
|
||||||
.SH "COPYRIGHT"
|
.SH "COPYRIGHT"
|
||||||
.br
|
.br
|
||||||
.PP
|
.PP
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_waitpid\fR
|
.\" Title: \fBmysql_waitpid\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_WAITPID\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_WAITPID\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysql_zap\fR
|
.\" Title: \fBmysql_zap\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQL_ZAP\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQL_ZAP\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqlaccess\fR
|
.\" Title: \fBmysqlaccess\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLACCESS\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLACCESS\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqladmin\fR
|
.\" Title: \fBmysqladmin\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLADMIN\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLADMIN\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqlbinlog\fR
|
.\" Title: \fBmysqlbinlog\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLBINLOG\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLBINLOG\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -855,7 +855,7 @@ You can pipe the output of
|
|||||||
into the
|
into the
|
||||||
\fBmysql\fR
|
\fBmysql\fR
|
||||||
client to execute the statements contained in the binary log\&. This is used to recover from a crash when you have an old backup (see
|
client to execute the statements contained in the binary log\&. This is used to recover from a crash when you have an old backup (see
|
||||||
Section\ \&6.1, \(lqDatabase Backups\(rq)\&. For example:
|
Section\ \&6.1, \(lqDatabase Backup Methods\(rq)\&. For example:
|
||||||
.sp
|
.sp
|
||||||
.if n \{\
|
.if n \{\
|
||||||
.RS 4
|
.RS 4
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqlbug\fR
|
.\" Title: \fBmysqlbug\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLBUG\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLBUG\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqlcheck\fR
|
.\" Title: \fBmysqlcheck\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLCHECK\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLCHECK\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -34,7 +34,14 @@ The
|
|||||||
\fBmysqlcheck\fR
|
\fBmysqlcheck\fR
|
||||||
client performs table maintenance: It checks, repairs, optimizes, or analyzes tables\&.
|
client performs table maintenance: It checks, repairs, optimizes, or analyzes tables\&.
|
||||||
.PP
|
.PP
|
||||||
Each table is locked and therefore unavailable to other sessions while it is being processed\&. Table maintenance operations can be time\-consuming, particularly for large tables\&. If you use the
|
Each table is locked and therefore unavailable to other sessions while it is being processed, although for check operations, the table is locked with a
|
||||||
|
READ
|
||||||
|
lock only (see
|
||||||
|
Section\ \&12.4.5, \(lqLOCK TABLES and UNLOCK TABLES Syntax\(rq, for more information about
|
||||||
|
READ
|
||||||
|
and
|
||||||
|
WRITE
|
||||||
|
locks)\&. Table maintenance operations can be time\-consuming, particularly for large tables\&. If you use the
|
||||||
\fB\-\-databases\fR
|
\fB\-\-databases\fR
|
||||||
or
|
or
|
||||||
\fB\-\-all\-databases\fR
|
\fB\-\-all\-databases\fR
|
||||||
@ -94,7 +101,7 @@ note : The storage engine for the table doesn\'t support check
|
|||||||
If
|
If
|
||||||
\fBmysqlcheck\fR
|
\fBmysqlcheck\fR
|
||||||
is unable to repair a table, see
|
is unable to repair a table, see
|
||||||
Section\ \&2.12.4, \(lqRebuilding or Repairing Tables or Indexes\(rq
|
Section\ \&2.4.4, \(lqRebuilding or Repairing Tables or Indexes\(rq
|
||||||
for manual table repair strategies\&. This will be the case, for example, for
|
for manual table repair strategies\&. This will be the case, for example, for
|
||||||
InnoDB
|
InnoDB
|
||||||
tables, which can be checked with
|
tables, which can be checked with
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqld\fR
|
.\" Title: \fBmysqld\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLD\FR" "8" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLD\FR" "8" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqld_multi\fR
|
.\" Title: \fBmysqld_multi\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLD_MULTI\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLD_MULTI\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -51,7 +51,7 @@ to specify which servers you want to start, stop, or obtain a status report for\
|
|||||||
[mysqld]
|
[mysqld]
|
||||||
group used for starting
|
group used for starting
|
||||||
\fBmysqld\fR\&. (See, for example,
|
\fBmysqld\fR\&. (See, for example,
|
||||||
Section\ \&2.11.2.2, \(lqStarting and Stopping MySQL Automatically\(rq\&.) However, when using multiple servers, it is necessary that each one use its own value for options such as the Unix socket file and TCP/IP port number\&. For more information on which options must be unique per server in a multiple\-server environment, see
|
Section\ \&2.13.1.2, \(lqStarting and Stopping MySQL Automatically\(rq\&.) However, when using multiple servers, it is necessary that each one use its own value for options such as the Unix socket file and TCP/IP port number\&. For more information on which options must be unique per server in a multiple\-server environment, see
|
||||||
Section\ \&5.6, \(lqRunning Multiple MySQL Servers on the Same Machine\(rq\&.
|
Section\ \&5.6, \(lqRunning Multiple MySQL Servers on the Same Machine\(rq\&.
|
||||||
.PP
|
.PP
|
||||||
To invoke
|
To invoke
|
||||||
@ -183,12 +183,6 @@ Otherwise, option files in the standard list of locations are read, including an
|
|||||||
option, if one is given\&. (If the option is given multiple times, the last value is used\&.)
|
option, if one is given\&. (If the option is given multiple times, the last value is used\&.)
|
||||||
.RE
|
.RE
|
||||||
.PP
|
.PP
|
||||||
Option files read are searched for
|
|
||||||
[mysqld_multi]
|
|
||||||
and
|
|
||||||
[mysqld\fIN\fR]
|
|
||||||
option groups\&.
|
|
||||||
.PP
|
|
||||||
Before MySQL 5\&.1\&.18, the preceding options are not recognized\&. Files in the standard locations are read, and any file named by the
|
Before MySQL 5\&.1\&.18, the preceding options are not recognized\&. Files in the standard locations are read, and any file named by the
|
||||||
\fB\-\-config\-file=\fR\fB\fIfile_name\fR\fR
|
\fB\-\-config\-file=\fR\fB\fIfile_name\fR\fR
|
||||||
option, if one is given\&. A file named by
|
option, if one is given\&. A file named by
|
||||||
@ -199,6 +193,39 @@ option groups, not the
|
|||||||
[mysqld_multi]
|
[mysqld_multi]
|
||||||
group\&.
|
group\&.
|
||||||
.PP
|
.PP
|
||||||
|
Option files read are searched for
|
||||||
|
[mysqld_multi]
|
||||||
|
and
|
||||||
|
[mysqld\fIN\fR]
|
||||||
|
option groups\&. The
|
||||||
|
[mysqld_multi]
|
||||||
|
group can be used for options to
|
||||||
|
\fBmysqld_multi\fR
|
||||||
|
itself\&.
|
||||||
|
[mysqld\fIN\fR]
|
||||||
|
groups can be used for options passed to specific
|
||||||
|
\fBmysqld\fR
|
||||||
|
instances\&.
|
||||||
|
.PP
|
||||||
|
As of MySQL 5\&.1\&.35, the
|
||||||
|
[mysqld]
|
||||||
|
or
|
||||||
|
[mysqld_safe]
|
||||||
|
groups can be used for common options read by all instances of
|
||||||
|
\fBmysqld\fR
|
||||||
|
or
|
||||||
|
\fBmysqld_safe\fR\&. You can specify a
|
||||||
|
\fB\-\-defaults\-file=\fR\fB\fIfile_name\fR\fR
|
||||||
|
option to use a different configuration file for that instance, in which case the
|
||||||
|
[mysqld]
|
||||||
|
or
|
||||||
|
[mysqld_safe]
|
||||||
|
groups from that file will be used for that instance\&. Before MySQL 5\&.1\&.35, some versions of
|
||||||
|
\fBmysqld_multi\fR
|
||||||
|
pass the
|
||||||
|
\fB\-\-no\-defaults\fR
|
||||||
|
options to instances, so these techniques are inapplicable\&.
|
||||||
|
.PP
|
||||||
\fBmysqld_multi\fR
|
\fBmysqld_multi\fR
|
||||||
supports the following options:
|
supports the following options:
|
||||||
.sp
|
.sp
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqld_safe\fR
|
.\" Title: \fBmysqld_safe\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLD_SAFE\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLD_SAFE\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqldump\fR
|
.\" Title: \fBmysqldump\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLDUMP\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLDUMP\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -575,7 +575,7 @@ uses
|
|||||||
utf8, and earlier versions use
|
utf8, and earlier versions use
|
||||||
latin1\&.
|
latin1\&.
|
||||||
.sp
|
.sp
|
||||||
This option has no effect for output data files produced by using the
|
Prior to MySQL 5\&.1\&.38, this option has no effect for output data files produced by using the
|
||||||
\fB\-\-tab\fR
|
\fB\-\-tab\fR
|
||||||
option\&. See the description for that option\&.
|
option\&. See the description for that option\&.
|
||||||
.RE
|
.RE
|
||||||
@ -1232,7 +1232,8 @@ statement for the table\&.
|
|||||||
\fB\-\-no\-set\-names\fR
|
\fB\-\-no\-set\-names\fR
|
||||||
.sp
|
.sp
|
||||||
This option is deprecated\&. Use
|
This option is deprecated\&. Use
|
||||||
\fB\-\-skip\-set\-charset\fR\&. instead\&.
|
\fB\-\-skip\-set\-charset\fR
|
||||||
|
instead\&.
|
||||||
.RE
|
.RE
|
||||||
.sp
|
.sp
|
||||||
.RS 4
|
.RS 4
|
||||||
@ -1657,11 +1658,11 @@ and
|
|||||||
\fB\-\-lines\-terminated\-by\fR
|
\fB\-\-lines\-terminated\-by\fR
|
||||||
options\&.
|
options\&.
|
||||||
.sp
|
.sp
|
||||||
Column values are dumped using the
|
As of MySQL 5\&.1\&.38, column values are written converted to the character set specified by the
|
||||||
binary
|
|
||||||
character set and the
|
|
||||||
\fB\-\-default\-character\-set\fR
|
\fB\-\-default\-character\-set\fR
|
||||||
option is ignored\&. In effect, there is no character set conversion\&. If a table contains columns in several character sets, the output data file will as well and you may not be able to reload the file correctly\&.
|
option\&. Prior to 5\&.1\&.38 or if no such option is present, values are dumped using the
|
||||||
|
binary
|
||||||
|
character set\&. In effect, there is no character set conversion\&. If a table contains columns in several character sets, the output data file will as well and you may not be able to reload the file correctly\&.
|
||||||
.if n \{\
|
.if n \{\
|
||||||
.sp
|
.sp
|
||||||
.\}
|
.\}
|
||||||
@ -2110,7 +2111,7 @@ InnoDB
|
|||||||
storage engine\&.
|
storage engine\&.
|
||||||
.PP
|
.PP
|
||||||
For more information on making backups, see
|
For more information on making backups, see
|
||||||
Section\ \&6.1, \(lqDatabase Backups\(rq, and
|
Section\ \&6.1, \(lqDatabase Backup Methods\(rq, and
|
||||||
Section\ \&6.2, \(lqExample Backup and Recovery Strategy\(rq\&.
|
Section\ \&6.2, \(lqExample Backup and Recovery Strategy\(rq\&.
|
||||||
.\" mysqldump: views
|
.\" mysqldump: views
|
||||||
.\" mysqldump: problems
|
.\" mysqldump: problems
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqldumpslow\fR
|
.\" Title: \fBmysqldumpslow\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLDUMPSLOW\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLDUMPSLOW\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqlhotcopy\fR
|
.\" Title: \fBmysqlhotcopy\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLHOTCOPY\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLHOTCOPY\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqlimport\fR
|
.\" Title: \fBmysqlimport\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLIMPORT\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLIMPORT\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqlmanager\fR
|
.\" Title: \fBmysqlmanager\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLMANAGER\FR" "8" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLMANAGER\FR" "8" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -274,7 +274,8 @@ Drop all users from the password file\&. This option was added in MySQL 5\&.1\&.
|
|||||||
.\}
|
.\}
|
||||||
.\" mysqlmanager: debug option
|
.\" mysqlmanager: debug option
|
||||||
.\" debug option: mysqlmanager
|
.\" debug option: mysqlmanager
|
||||||
\fB\-\-debug=\fR\fB\fIdebug_options\fR\fR\fB, \-# \fR\fB\fIdebug_options\fR\fR
|
\fB\-\-debug=\fR\fB\fIdebug_options\fR\fR,
|
||||||
|
\fB\-# \fR\fB\fIdebug_options\fR\fR
|
||||||
.sp
|
.sp
|
||||||
Write a debugging log\&. A typical
|
Write a debugging log\&. A typical
|
||||||
\fIdebug_options\fR
|
\fIdebug_options\fR
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqlshow\fR
|
.\" Title: \fBmysqlshow\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLSHOW\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLSHOW\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqlslap\fR
|
.\" Title: \fBmysqlslap\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLSLAP\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBMYSQLSLAP\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBmysqltest\fR
|
.\" Title: \fBmysqltest\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/08/2009
|
.\" Date: 10/29/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL
|
.\" Source: MySQL
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBMYSQLTEST\FR" "1" "08/08/2009" "MySQL" "MySQL Database System"
|
.TH "\FBMYSQLTEST\FR" "1" "10/29/2009" "MySQL" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
228
man/ndbd.8
228
man/ndbd.8
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBndbd\fR
|
.\" Title: \fBndbd\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBNDBD\FR" "8" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBNDBD\FR" "8" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -41,8 +41,9 @@ processes cooperate in handling data\&. These processes can execute on the same
|
|||||||
.\" command options (MySQL Cluster): ndbd
|
.\" command options (MySQL Cluster): ndbd
|
||||||
.\" MySQL Cluster: ndbd process
|
.\" MySQL Cluster: ndbd process
|
||||||
.PP
|
.PP
|
||||||
The following list describes command options specific to the MySQL Cluster data node program
|
The following table includes command options specific to the MySQL Cluster data node program
|
||||||
\fBndbd\fR\&.
|
\fBndbd\fR\&. Additional descriptions follow the table\&. For options common to all MySQL Cluster programs, see
|
||||||
|
Section\ \&17.4.2, \(lqOptions Common to MySQL Cluster Programs\(rq\&.
|
||||||
.if n \{\
|
.if n \{\
|
||||||
.sp
|
.sp
|
||||||
.\}
|
.\}
|
||||||
@ -68,7 +69,7 @@ wherever the latter occurs in this section\&.
|
|||||||
For options common to all
|
For options common to all
|
||||||
NDBCLUSTER
|
NDBCLUSTER
|
||||||
programs, see
|
programs, see
|
||||||
Section\ \&17.6.2, \(lqOptions Common to MySQL Cluster Programs\(rq\&.
|
Section\ \&17.4.2, \(lqOptions Common to MySQL Cluster Programs\(rq\&.
|
||||||
.sp
|
.sp
|
||||||
.RS 4
|
.RS 4
|
||||||
.ie n \{\
|
.ie n \{\
|
||||||
@ -81,9 +82,11 @@ Section\ \&17.6.2, \(lqOptions Common to MySQL Cluster Programs\(rq\&.
|
|||||||
\fB\-\-bind\-address\fR
|
\fB\-\-bind\-address\fR
|
||||||
.TS
|
.TS
|
||||||
allbox tab(:);
|
allbox tab(:);
|
||||||
l l
|
l l s
|
||||||
l l
|
l l s
|
||||||
l l.
|
l l s
|
||||||
|
^ l l
|
||||||
|
^ l l.
|
||||||
T{
|
T{
|
||||||
\fBVersion Introduced\fR
|
\fBVersion Introduced\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
@ -95,28 +98,16 @@ T}:T{
|
|||||||
\-\-bind\-address=name
|
\-\-bind\-address=name
|
||||||
T}
|
T}
|
||||||
T{
|
T{
|
||||||
\fBPermitted Values \fR
|
\ \&
|
||||||
T}:T{
|
T}:T{
|
||||||
[\fInested\ table\fR]*
|
\fBPermitted Values \fR
|
||||||
T}
|
T}
|
||||||
.TE
|
:T{
|
||||||
.sp 1
|
|
||||||
.sp
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.br
|
|
||||||
.B *[nested\ table]
|
|
||||||
.TS
|
|
||||||
allbox tab(:);
|
|
||||||
l l
|
|
||||||
l l.
|
|
||||||
T{
|
|
||||||
\fBType\fR
|
\fBType\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
string
|
string
|
||||||
T}
|
T}
|
||||||
T{
|
:T{
|
||||||
\fBDefault\fR
|
\fBDefault\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
T}
|
T}
|
||||||
@ -141,36 +132,26 @@ This option was added in MySQL 5\&.1\&.12\&.
|
|||||||
\fB\-d\fR
|
\fB\-d\fR
|
||||||
.TS
|
.TS
|
||||||
allbox tab(:);
|
allbox tab(:);
|
||||||
l l
|
l l s
|
||||||
l l.
|
l l s
|
||||||
|
^ l l
|
||||||
|
^ l l.
|
||||||
T{
|
T{
|
||||||
\fBCommand Line Format\fR
|
\fBCommand Line Format\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
\-\-daemon
|
\-\-daemon
|
||||||
T}
|
T}
|
||||||
T{
|
T{
|
||||||
\fBPermitted Values \fR
|
\ \&
|
||||||
T}:T{
|
T}:T{
|
||||||
[\fInested\ table\fR]*
|
\fBPermitted Values \fR
|
||||||
T}
|
T}
|
||||||
.TE
|
:T{
|
||||||
.sp 1
|
|
||||||
.sp
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.br
|
|
||||||
.B *[nested\ table]
|
|
||||||
.TS
|
|
||||||
allbox tab(:);
|
|
||||||
l l
|
|
||||||
l l.
|
|
||||||
T{
|
|
||||||
\fBType\fR
|
\fBType\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
boolean
|
boolean
|
||||||
T}
|
T}
|
||||||
T{
|
:T{
|
||||||
\fBDefault\fR
|
\fBDefault\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
TRUE
|
TRUE
|
||||||
@ -182,6 +163,12 @@ Instructs
|
|||||||
to execute as a daemon process\&. This is the default behavior\&.
|
to execute as a daemon process\&. This is the default behavior\&.
|
||||||
\fB\-\-nodaemon\fR
|
\fB\-\-nodaemon\fR
|
||||||
can be used to prevent the process from running as a daemon\&.
|
can be used to prevent the process from running as a daemon\&.
|
||||||
|
.sp
|
||||||
|
This option has no effect when running
|
||||||
|
\fBndbd\fR
|
||||||
|
or
|
||||||
|
\fBndbmtd\fR
|
||||||
|
on Windows platforms\&.
|
||||||
.RE
|
.RE
|
||||||
.sp
|
.sp
|
||||||
.RS 4
|
.RS 4
|
||||||
@ -197,36 +184,26 @@ can be used to prevent the process from running as a daemon\&.
|
|||||||
\fB\-\-initial\fR
|
\fB\-\-initial\fR
|
||||||
.TS
|
.TS
|
||||||
allbox tab(:);
|
allbox tab(:);
|
||||||
l l
|
l l s
|
||||||
l l.
|
l l s
|
||||||
|
^ l l
|
||||||
|
^ l l.
|
||||||
T{
|
T{
|
||||||
\fBCommand Line Format\fR
|
\fBCommand Line Format\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
\-\-initial
|
\-\-initial
|
||||||
T}
|
T}
|
||||||
T{
|
T{
|
||||||
\fBPermitted Values \fR
|
\ \&
|
||||||
T}:T{
|
T}:T{
|
||||||
[\fInested\ table\fR]*
|
\fBPermitted Values \fR
|
||||||
T}
|
T}
|
||||||
.TE
|
:T{
|
||||||
.sp 1
|
|
||||||
.sp
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.br
|
|
||||||
.B *[nested\ table]
|
|
||||||
.TS
|
|
||||||
allbox tab(:);
|
|
||||||
l l
|
|
||||||
l l.
|
|
||||||
T{
|
|
||||||
\fBType\fR
|
\fBType\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
boolean
|
boolean
|
||||||
T}
|
T}
|
||||||
T{
|
:T{
|
||||||
\fBDefault\fR
|
\fBDefault\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
FALSE
|
FALSE
|
||||||
@ -321,9 +298,11 @@ Backup files that have already been created by the affected node
|
|||||||
.IP \(bu 2.3
|
.IP \(bu 2.3
|
||||||
.\}
|
.\}
|
||||||
MySQL Cluster Disk Data files (see
|
MySQL Cluster Disk Data files (see
|
||||||
Section\ \&17.10, \(lqMySQL Cluster Disk Data Tables\(rq)\&.
|
Section\ \&17.5.9, \(lqMySQL Cluster Disk Data Tables\(rq)\&.
|
||||||
.RE
|
.RE
|
||||||
.RS 4
|
.RS 4
|
||||||
|
.sp
|
||||||
|
This option also has no effect on recovery of data by a data node that is just starting (or restarting) from data nodes that are already running\&. This recovery of data occurs automatically, and requires no user intervention in a MySQL Cluster that is running normally\&.
|
||||||
.sp .5v
|
.sp .5v
|
||||||
.RE
|
.RE
|
||||||
It is permissible to use this option when starting the cluster for the very first time (that is, before any data node files have been created); however, it is
|
It is permissible to use this option when starting the cluster for the very first time (that is, before any data node files have been created); however, it is
|
||||||
@ -344,9 +323,11 @@ necessary to do so\&.
|
|||||||
\fB\-\-initial\-start\fR
|
\fB\-\-initial\-start\fR
|
||||||
.TS
|
.TS
|
||||||
allbox tab(:);
|
allbox tab(:);
|
||||||
l l
|
l l s
|
||||||
l l
|
l l s
|
||||||
l l.
|
l l s
|
||||||
|
^ l l
|
||||||
|
^ l l.
|
||||||
T{
|
T{
|
||||||
\fBVersion Introduced\fR
|
\fBVersion Introduced\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
@ -358,28 +339,16 @@ T}:T{
|
|||||||
\-\-initial\-start
|
\-\-initial\-start
|
||||||
T}
|
T}
|
||||||
T{
|
T{
|
||||||
\fBPermitted Values \fR
|
\ \&
|
||||||
T}:T{
|
T}:T{
|
||||||
[\fInested\ table\fR]*
|
\fBPermitted Values \fR
|
||||||
T}
|
T}
|
||||||
.TE
|
:T{
|
||||||
.sp 1
|
|
||||||
.sp
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.br
|
|
||||||
.B *[nested\ table]
|
|
||||||
.TS
|
|
||||||
allbox tab(:);
|
|
||||||
l l
|
|
||||||
l l.
|
|
||||||
T{
|
|
||||||
\fBType\fR
|
\fBType\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
boolean
|
boolean
|
||||||
T}
|
T}
|
||||||
T{
|
:T{
|
||||||
\fBDefault\fR
|
\fBDefault\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
FALSE
|
FALSE
|
||||||
@ -435,9 +404,11 @@ Prior to MySQL 5\&.1\&.19, it was not possible to perform DDL operations involvi
|
|||||||
\fB\-\-nowait\-nodes=\fR\fB\fInode_id_1\fR\fR\fB[, \fR\fB\fInode_id_2\fR\fR\fB[, \&.\&.\&.]]\fR
|
\fB\-\-nowait\-nodes=\fR\fB\fInode_id_1\fR\fR\fB[, \fR\fB\fInode_id_2\fR\fR\fB[, \&.\&.\&.]]\fR
|
||||||
.TS
|
.TS
|
||||||
allbox tab(:);
|
allbox tab(:);
|
||||||
l l
|
l l s
|
||||||
l l
|
l l s
|
||||||
l l.
|
l l s
|
||||||
|
^ l l
|
||||||
|
^ l l.
|
||||||
T{
|
T{
|
||||||
\fBVersion Introduced\fR
|
\fBVersion Introduced\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
@ -449,28 +420,16 @@ T}:T{
|
|||||||
\-\-nowait\-nodes=list
|
\-\-nowait\-nodes=list
|
||||||
T}
|
T}
|
||||||
T{
|
T{
|
||||||
\fBPermitted Values \fR
|
\ \&
|
||||||
T}:T{
|
T}:T{
|
||||||
[\fInested\ table\fR]*
|
\fBPermitted Values \fR
|
||||||
T}
|
T}
|
||||||
.TE
|
:T{
|
||||||
.sp 1
|
|
||||||
.sp
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.br
|
|
||||||
.B *[nested\ table]
|
|
||||||
.TS
|
|
||||||
allbox tab(:);
|
|
||||||
l l
|
|
||||||
l l.
|
|
||||||
T{
|
|
||||||
\fBType\fR
|
\fBType\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
string
|
string
|
||||||
T}
|
T}
|
||||||
T{
|
:T{
|
||||||
\fBDefault\fR
|
\fBDefault\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
T}
|
T}
|
||||||
@ -508,36 +467,26 @@ This option was added in MySQL 5\&.1\&.9\&.
|
|||||||
\fB\-\-nodaemon\fR
|
\fB\-\-nodaemon\fR
|
||||||
.TS
|
.TS
|
||||||
allbox tab(:);
|
allbox tab(:);
|
||||||
l l
|
l l s
|
||||||
l l.
|
l l s
|
||||||
|
^ l l
|
||||||
|
^ l l.
|
||||||
T{
|
T{
|
||||||
\fBCommand Line Format\fR
|
\fBCommand Line Format\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
\-\-nodaemon
|
\-\-nodaemon
|
||||||
T}
|
T}
|
||||||
T{
|
T{
|
||||||
\fBPermitted Values \fR
|
\ \&
|
||||||
T}:T{
|
T}:T{
|
||||||
[\fInested\ table\fR]*
|
\fBPermitted Values \fR
|
||||||
T}
|
T}
|
||||||
.TE
|
:T{
|
||||||
.sp 1
|
|
||||||
.sp
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.br
|
|
||||||
.B *[nested\ table]
|
|
||||||
.TS
|
|
||||||
allbox tab(:);
|
|
||||||
l l
|
|
||||||
l l.
|
|
||||||
T{
|
|
||||||
\fBType\fR
|
\fBType\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
boolean
|
boolean
|
||||||
T}
|
T}
|
||||||
T{
|
:T{
|
||||||
\fBDefault\fR
|
\fBDefault\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
FALSE
|
FALSE
|
||||||
@ -549,6 +498,12 @@ Instructs
|
|||||||
not to start as a daemon process\&. This is useful when
|
not to start as a daemon process\&. This is useful when
|
||||||
\fBndbd\fR
|
\fBndbd\fR
|
||||||
is being debugged and you want output to be redirected to the screen\&.
|
is being debugged and you want output to be redirected to the screen\&.
|
||||||
|
.sp
|
||||||
|
As of MySQL Cluster NDB 7\&.0\&.8, the default behavior for
|
||||||
|
\fBndbd\fR
|
||||||
|
and
|
||||||
|
\fBndbmtd\fR
|
||||||
|
on Windows is to run in the foreground, making this option unnecessary on Windows platforms\&. (\m[blue]\fBBug#45588\fR\m[]\&\s-2\u[2]\d\s+2)
|
||||||
.RE
|
.RE
|
||||||
.sp
|
.sp
|
||||||
.RS 4
|
.RS 4
|
||||||
@ -567,36 +522,26 @@ is being debugged and you want output to be redirected to the screen\&.
|
|||||||
\fB\-n\fR
|
\fB\-n\fR
|
||||||
.TS
|
.TS
|
||||||
allbox tab(:);
|
allbox tab(:);
|
||||||
l l
|
l l s
|
||||||
l l.
|
l l s
|
||||||
|
^ l l
|
||||||
|
^ l l.
|
||||||
T{
|
T{
|
||||||
\fBCommand Line Format\fR
|
\fBCommand Line Format\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
\-\-nostart
|
\-\-nostart
|
||||||
T}
|
T}
|
||||||
T{
|
T{
|
||||||
\fBPermitted Values \fR
|
\ \&
|
||||||
T}:T{
|
T}:T{
|
||||||
[\fInested\ table\fR]*
|
\fBPermitted Values \fR
|
||||||
T}
|
T}
|
||||||
.TE
|
:T{
|
||||||
.sp 1
|
|
||||||
.sp
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.br
|
|
||||||
.B *[nested\ table]
|
|
||||||
.TS
|
|
||||||
allbox tab(:);
|
|
||||||
l l
|
|
||||||
l l.
|
|
||||||
T{
|
|
||||||
\fBType\fR
|
\fBType\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
boolean
|
boolean
|
||||||
T}
|
T}
|
||||||
T{
|
:T{
|
||||||
\fBDefault\fR
|
\fBDefault\fR
|
||||||
T}:T{
|
T}:T{
|
||||||
FALSE
|
FALSE
|
||||||
@ -610,7 +555,7 @@ not to start automatically\&. When this option is used,
|
|||||||
connects to the management server, obtains configuration data from it, and initializes communication objects\&. However, it does not actually start the execution engine until specifically requested to do so by the management server\&. This can be accomplished by issuing the proper
|
connects to the management server, obtains configuration data from it, and initializes communication objects\&. However, it does not actually start the execution engine until specifically requested to do so by the management server\&. This can be accomplished by issuing the proper
|
||||||
START
|
START
|
||||||
command in the management client (see
|
command in the management client (see
|
||||||
Section\ \&17.7.2, \(lqCommands in the MySQL Cluster Management Client\(rq)\&.
|
Section\ \&17.5.2, \(lqCommands in the MySQL Cluster Management Client\(rq)\&.
|
||||||
.RE
|
.RE
|
||||||
.\" MySQL Cluster: log files
|
.\" MySQL Cluster: log files
|
||||||
.\" log files (MySQL Cluster)
|
.\" log files (MySQL Cluster)
|
||||||
@ -668,7 +613,7 @@ TraceFile: ndb_2_trace\&.log\&.2
|
|||||||
Listings of possible
|
Listings of possible
|
||||||
\fBndbd\fR
|
\fBndbd\fR
|
||||||
exit codes and messages generated when a data node process shuts down prematurely can be found in
|
exit codes and messages generated when a data node process shuts down prematurely can be found in
|
||||||
\m[blue]\fBndbd Error Messages\fR\m[]\&\s-2\u[2]\d\s+2\&.
|
\m[blue]\fBndbd Error Messages\fR\m[]\&\s-2\u[3]\d\s+2\&.
|
||||||
.if n \{\
|
.if n \{\
|
||||||
.sp
|
.sp
|
||||||
.\}
|
.\}
|
||||||
@ -784,7 +729,7 @@ shell> \fBndbd \-\-connect\-string="nodeid=2;host=ndb_mgmd\&.mysql\&.com:1186"\f
|
|||||||
.\}
|
.\}
|
||||||
.PP
|
.PP
|
||||||
See
|
See
|
||||||
Section\ \&17.3.4.3, \(lqThe MySQL Cluster Connectstring\(rq, for additional information about this issue\&.
|
Section\ \&17.3.2.3, \(lqThe MySQL Cluster Connectstring\(rq, for additional information about this issue\&.
|
||||||
\fBndbd\fR(8), describes other options for
|
\fBndbd\fR(8), describes other options for
|
||||||
\fBndbd\fR\&.
|
\fBndbd\fR\&.
|
||||||
.PP
|
.PP
|
||||||
@ -810,7 +755,7 @@ process can consume up to 2 CPUs if permitted to do so\&.
|
|||||||
For a machine with many CPUs it is possible to use several
|
For a machine with many CPUs it is possible to use several
|
||||||
\fBndbd\fR
|
\fBndbd\fR
|
||||||
processes which belong to different node groups; however, such a configuration is still considered experimental and is not supported for MySQL 5\&.1 in a production setting\&. See
|
processes which belong to different node groups; however, such a configuration is still considered experimental and is not supported for MySQL 5\&.1 in a production setting\&. See
|
||||||
Section\ \&17.12, \(lqKnown Limitations of MySQL Cluster\(rq\&.
|
Section\ \&17.1.5, \(lqKnown Limitations of MySQL Cluster\(rq\&.
|
||||||
.SH "COPYRIGHT"
|
.SH "COPYRIGHT"
|
||||||
.br
|
.br
|
||||||
.PP
|
.PP
|
||||||
@ -829,6 +774,11 @@ Bug#24631
|
|||||||
\%http://bugs.mysql.com/24631
|
\%http://bugs.mysql.com/24631
|
||||||
.RE
|
.RE
|
||||||
.IP " 2." 4
|
.IP " 2." 4
|
||||||
|
Bug#45588
|
||||||
|
.RS 4
|
||||||
|
\%http://bugs.mysql.com/45588
|
||||||
|
.RE
|
||||||
|
.IP " 3." 4
|
||||||
ndbd Error Messages
|
ndbd Error Messages
|
||||||
.RS 4
|
.RS 4
|
||||||
\%http://dev.mysql.com/doc/ndbapi/en/ndbd-error-messages.html
|
\%http://dev.mysql.com/doc/ndbapi/en/ndbd-error-messages.html
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBndbd_redo_log_reader\fR
|
.\" Title: \fBndbd_redo_log_reader\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBNDBD_REDO_LOG_REA" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBNDBD_REDO_LOG_REA" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -37,6 +37,10 @@ The C++ source files for
|
|||||||
can be found in the directory
|
can be found in the directory
|
||||||
/storage/ndb/src/kernel/blocks/dblqh/redoLogReader\&.
|
/storage/ndb/src/kernel/blocks/dblqh/redoLogReader\&.
|
||||||
.PP
|
.PP
|
||||||
|
The following table includes options that are specific to the MySQL Cluster program
|
||||||
|
\fBndbd_redo_log_reader\fR\&. Additional descriptions follow the table\&. For options common to all MySQL Cluster programs, see
|
||||||
|
Section\ \&17.4.2, \(lqOptions Common to MySQL Cluster Programs\(rq\&.
|
||||||
|
.PP
|
||||||
\fBUsage\fR:
|
\fBUsage\fR:
|
||||||
.sp
|
.sp
|
||||||
.if n \{\
|
.if n \{\
|
||||||
@ -56,84 +60,6 @@ ndb_\fI#\fR_fs/D\fI#\fR/LCP/\fI#\fR/T\fI#\fRF\fI#\fR\&.Data\&. In each case, the
|
|||||||
represents a number (not necessarily the same number)\&. For more information, see
|
represents a number (not necessarily the same number)\&. For more information, see
|
||||||
\m[blue]\fBCluster Data Node FileSystemDir Files\fR\m[]\&\s-2\u[1]\d\s+2\&.
|
\m[blue]\fBCluster Data Node FileSystemDir Files\fR\m[]\&\s-2\u[1]\d\s+2\&.
|
||||||
.PP
|
.PP
|
||||||
\fBAdditional Options\fR:
|
|
||||||
.TS
|
|
||||||
allbox tab(:);
|
|
||||||
l l
|
|
||||||
l l.
|
|
||||||
T{
|
|
||||||
\fBCommand Line Format\fR
|
|
||||||
T}:T{
|
|
||||||
\-noprint
|
|
||||||
T}
|
|
||||||
T{
|
|
||||||
\fBPermitted Values \fR
|
|
||||||
T}:T{
|
|
||||||
[\fInested\ table\fR]*
|
|
||||||
T}
|
|
||||||
.TE
|
|
||||||
.sp 1
|
|
||||||
.sp
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.br
|
|
||||||
.B *[nested\ table]
|
|
||||||
.TS
|
|
||||||
allbox tab(:);
|
|
||||||
l l
|
|
||||||
l l.
|
|
||||||
T{
|
|
||||||
\fBType\fR
|
|
||||||
T}:T{
|
|
||||||
boolean
|
|
||||||
T}
|
|
||||||
T{
|
|
||||||
\fBDefault\fR
|
|
||||||
T}:T{
|
|
||||||
FALSE
|
|
||||||
T}
|
|
||||||
.TE
|
|
||||||
.sp 1
|
|
||||||
.TS
|
|
||||||
allbox tab(:);
|
|
||||||
l l
|
|
||||||
l l.
|
|
||||||
T{
|
|
||||||
\fBCommand Line Format\fR
|
|
||||||
T}:T{
|
|
||||||
\-nocheck
|
|
||||||
T}
|
|
||||||
T{
|
|
||||||
\fBPermitted Values \fR
|
|
||||||
T}:T{
|
|
||||||
[\fInested\ table\fR]*
|
|
||||||
T}
|
|
||||||
.TE
|
|
||||||
.sp 1
|
|
||||||
.sp
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.br
|
|
||||||
.B *[nested\ table]
|
|
||||||
.TS
|
|
||||||
allbox tab(:);
|
|
||||||
l l
|
|
||||||
l l.
|
|
||||||
T{
|
|
||||||
\fBType\fR
|
|
||||||
T}:T{
|
|
||||||
boolean
|
|
||||||
T}
|
|
||||||
T{
|
|
||||||
\fBDefault\fR
|
|
||||||
T}:T{
|
|
||||||
FALSE
|
|
||||||
T}
|
|
||||||
.TE
|
|
||||||
.sp 1
|
|
||||||
.PP
|
|
||||||
The name of the file to be read may be followed by one or more of the options listed here:
|
The name of the file to be read may be followed by one or more of the options listed here:
|
||||||
.sp
|
.sp
|
||||||
.RS 4
|
.RS 4
|
||||||
@ -144,6 +70,34 @@ The name of the file to be read may be followed by one or more of the options li
|
|||||||
.sp -1
|
.sp -1
|
||||||
.IP \(bu 2.3
|
.IP \(bu 2.3
|
||||||
.\}
|
.\}
|
||||||
|
.TS
|
||||||
|
allbox tab(:);
|
||||||
|
l l s
|
||||||
|
l l s
|
||||||
|
^ l l
|
||||||
|
^ l l.
|
||||||
|
T{
|
||||||
|
\fBCommand Line Format\fR
|
||||||
|
T}:T{
|
||||||
|
\-noprint
|
||||||
|
T}
|
||||||
|
T{
|
||||||
|
\ \&
|
||||||
|
T}:T{
|
||||||
|
\fBPermitted Values \fR
|
||||||
|
T}
|
||||||
|
:T{
|
||||||
|
\fBType\fR
|
||||||
|
T}:T{
|
||||||
|
boolean
|
||||||
|
T}
|
||||||
|
:T{
|
||||||
|
\fBDefault\fR
|
||||||
|
T}:T{
|
||||||
|
FALSE
|
||||||
|
T}
|
||||||
|
.TE
|
||||||
|
.sp 1
|
||||||
\fB\-noprint\fR: Do not print the contents of the log file\&.
|
\fB\-noprint\fR: Do not print the contents of the log file\&.
|
||||||
.RE
|
.RE
|
||||||
.sp
|
.sp
|
||||||
@ -155,6 +109,34 @@ The name of the file to be read may be followed by one or more of the options li
|
|||||||
.sp -1
|
.sp -1
|
||||||
.IP \(bu 2.3
|
.IP \(bu 2.3
|
||||||
.\}
|
.\}
|
||||||
|
.TS
|
||||||
|
allbox tab(:);
|
||||||
|
l l s
|
||||||
|
l l s
|
||||||
|
^ l l
|
||||||
|
^ l l.
|
||||||
|
T{
|
||||||
|
\fBCommand Line Format\fR
|
||||||
|
T}:T{
|
||||||
|
\-nocheck
|
||||||
|
T}
|
||||||
|
T{
|
||||||
|
\ \&
|
||||||
|
T}:T{
|
||||||
|
\fBPermitted Values \fR
|
||||||
|
T}
|
||||||
|
:T{
|
||||||
|
\fBType\fR
|
||||||
|
T}:T{
|
||||||
|
boolean
|
||||||
|
T}
|
||||||
|
:T{
|
||||||
|
\fBDefault\fR
|
||||||
|
T}:T{
|
||||||
|
FALSE
|
||||||
|
T}
|
||||||
|
.TE
|
||||||
|
.sp 1
|
||||||
\fB\-nocheck\fR: Do not check the log file for errors\&.
|
\fB\-nocheck\fR: Do not check the log file for errors\&.
|
||||||
.RE
|
.RE
|
||||||
.sp
|
.sp
|
||||||
@ -184,7 +166,7 @@ You should have received a copy of the GNU General Public License along with the
|
|||||||
.IP " 1." 4
|
.IP " 1." 4
|
||||||
Cluster Data Node FileSystemDir Files
|
Cluster Data Node FileSystemDir Files
|
||||||
.RS 4
|
.RS 4
|
||||||
\%http://dev.mysql.com/doc/ndbapi/en/ndb-internals-ndbd-filesystem.html#ndb-internals-ndbd-filesystemdir-files
|
\%http://dev.mysql.com/doc/ndbapi/en/ndb-internals-ndbd-filesystemdir-files.html
|
||||||
.RE
|
.RE
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
For more information, please refer to the MySQL Reference Manual,
|
For more information, please refer to the MySQL Reference Manual,
|
||||||
|
32
man/ndbmtd.8
32
man/ndbmtd.8
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBndbmtd\fR
|
.\" Title: \fBndbmtd\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBNDBMTD\FR" "8" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBNDBMTD\FR" "8" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
@ -49,8 +49,8 @@ Command\-line options and configuration parameters used with
|
|||||||
\fBndbd\fR
|
\fBndbd\fR
|
||||||
also apply to
|
also apply to
|
||||||
\fBndbmtd\fR\&. For more information about these options and parameters, see
|
\fBndbmtd\fR\&. For more information about these options and parameters, see
|
||||||
Section\ \&17.6.3.2, \(lqProgram Options for ndbd and ndbmtd\(rq, and
|
\fBndbd\fR(8), and
|
||||||
Section\ \&17.3.4.6, \(lqDefining MySQL Cluster Data Nodes\(rq, respectively\&.
|
Section\ \&17.3.2.6, \(lqDefining MySQL Cluster Data Nodes\(rq, respectively\&.
|
||||||
.PP
|
.PP
|
||||||
\fBndbmtd\fR
|
\fBndbmtd\fR
|
||||||
is also file system\-compatible with
|
is also file system\-compatible with
|
||||||
@ -69,25 +69,13 @@ simply by stopping the node and then starting
|
|||||||
\fBndbd\fR
|
\fBndbd\fR
|
||||||
in place of the multi\-threaded binary\&. It is not necessary when switching between the two to start the data node binary using
|
in place of the multi\-threaded binary\&. It is not necessary when switching between the two to start the data node binary using
|
||||||
\fB\-\-initial\fR\&.
|
\fB\-\-initial\fR\&.
|
||||||
.if n \{\
|
|
||||||
.sp
|
|
||||||
.\}
|
|
||||||
.RS 4
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.br
|
|
||||||
.ps +1
|
|
||||||
\fBImportant\fR
|
|
||||||
.ps -1
|
|
||||||
.br
|
|
||||||
.PP
|
.PP
|
||||||
We do not currently recommend using
|
Prior to MySQL Cluster NDB 7\&.0\&.6, there were known issues when using
|
||||||
\fBndbmtd\fR
|
\fBndbmtd\fR
|
||||||
with MySQL Cluster Disk Data tables in production, due to known issues which we are working to fix in a future MySQL Cluster release\&. (\m[blue]\fBBug#41915\fR\m[]\&\s-2\u[1]\d\s+2,
|
with MySQL Cluster Disk Data tables\&. If you wish to use multi\-threaded data nodes with disk\-based
|
||||||
|
NDB
|
||||||
|
tables, you should insure that you are running MySQL Cluster NDB 7\&.0\&.6 or later\&. (\m[blue]\fBBug#41915\fR\m[]\&\s-2\u[1]\d\s+2,
|
||||||
\m[blue]\fBBug#44915\fR\m[]\&\s-2\u[2]\d\s+2)
|
\m[blue]\fBBug#44915\fR\m[]\&\s-2\u[2]\d\s+2)
|
||||||
.sp .5v
|
|
||||||
.RE
|
|
||||||
.PP
|
.PP
|
||||||
Using
|
Using
|
||||||
\fBndbmtd\fR
|
\fBndbmtd\fR
|
||||||
@ -129,6 +117,8 @@ failures\&.
|
|||||||
.RE
|
.RE
|
||||||
.PP
|
.PP
|
||||||
These differences are discussed in more detail in the next few paragraphs\&.
|
These differences are discussed in more detail in the next few paragraphs\&.
|
||||||
|
.\" execution threads (MySQL Cluster)
|
||||||
|
.\" MySQL Cluster: execution threads
|
||||||
.\" ndbmtd: MaxNoOfExecutionThreads
|
.\" ndbmtd: MaxNoOfExecutionThreads
|
||||||
.\" MaxNoOfExecutionThreads: ndbmtd
|
.\" MaxNoOfExecutionThreads: ndbmtd
|
||||||
.\" ndbmtd: trace files
|
.\" ndbmtd: trace files
|
||||||
@ -148,7 +138,7 @@ file, it is exclusive to
|
|||||||
and does not apply to
|
and does not apply to
|
||||||
\fBndbd\fR\&.
|
\fBndbd\fR\&.
|
||||||
.PP
|
.PP
|
||||||
This parameter takes an integer value from 2 to 8 inclusive\&. Generally, you should set this to the number of CPU cores on the data node host, as shown in the following table:
|
This parameter takes an integer value from 2 to 8 inclusive\&. Generally, you should set this parameter equal to the number of CPU cores on the data node host, as shown in the following table:
|
||||||
.TS
|
.TS
|
||||||
allbox tab(:);
|
allbox tab(:);
|
||||||
lB lB.
|
lB lB.
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBperror\fR
|
.\" Title: \fBperror\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBPERROR\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBPERROR\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBreplace\fR
|
.\" Title: \fBreplace\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBREPLACE\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBREPLACE\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBresolve_stack_dump\fR
|
.\" Title: \fBresolve_stack_dump\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBRESOLVE_STACK_DUM" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBRESOLVE_STACK_DUM" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -2,12 +2,12 @@
|
|||||||
.\" Title: \fBresolveip\fR
|
.\" Title: \fBresolveip\fR
|
||||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||||
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
||||||
.\" Date: 08/12/2009
|
.\" Date: 11/04/2009
|
||||||
.\" Manual: MySQL Database System
|
.\" Manual: MySQL Database System
|
||||||
.\" Source: MySQL 5.1
|
.\" Source: MySQL 5.1
|
||||||
.\" Language: English
|
.\" Language: English
|
||||||
.\"
|
.\"
|
||||||
.TH "\FBRESOLVEIP\FR" "1" "08/12/2009" "MySQL 5\&.1" "MySQL Database System"
|
.TH "\FBRESOLVEIP\FR" "1" "11/04/2009" "MySQL 5\&.1" "MySQL Database System"
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
.\" * set default formatting
|
.\" * set default formatting
|
||||||
.\" -----------------------------------------------------------------
|
.\" -----------------------------------------------------------------
|
||||||
|
@ -23,3 +23,10 @@ The syntax is as follows:
|
|||||||
start with the same characters up to the last letter before the asterisk
|
start with the same characters up to the last letter before the asterisk
|
||||||
are considered experimental:
|
are considered experimental:
|
||||||
main.a* # get rid of main.alias, main.alibaba and main.agliolio
|
main.a* # get rid of main.alias, main.alibaba and main.agliolio
|
||||||
|
|
||||||
|
6) Optionally, the test case may be followed by one or more platform
|
||||||
|
qualifiers beginning with @ or @!. The test will then be considered
|
||||||
|
experimental only/except on that platform. Basic OS names as
|
||||||
|
reported by $^O in Perl, or 'windows' are supported, this includes
|
||||||
|
solaris, linux, windows, aix, darwin, ... Example:
|
||||||
|
main.alias @aix @windows # Fails on those
|
||||||
|
@ -1,6 +1,45 @@
|
|||||||
|
# For easier human reading (MTR doesn't care), please keep entries
|
||||||
|
# in alphabetical order. This also helps with merge conflict resolution.
|
||||||
|
|
||||||
|
binlog.binlog_multi_engine # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
|
||||||
funcs_1.charset_collation_1 # depends on compile-time decisions
|
funcs_1.charset_collation_1 # depends on compile-time decisions
|
||||||
binlog.binlog_tmp_table # Bug#45578: Test binlog_tmp_table fails ramdonly on PB2: Unknown table 't2'
|
funcs_1.is_cml_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
main.ctype_gbk_binlog # Bug#46010: main.ctype_gbk_binlog fails sporadically : Table 't2' already exists
|
funcs_1.is_columns_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
rpl.rpl_row_create_table # Bug#45576: rpl_row_create_table fails on PB2
|
funcs_1.is_engines_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
funcs_1.is_tables_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
funcs_1.ndb* # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
|
||||||
|
funcs_2.ndb_charset # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
|
||||||
|
main.ctype_gbk_binlog @solaris # Bug#46010: main.ctype_gbk_binlog fails sporadically : Table 't2' already exists
|
||||||
|
main.innodb-autoinc* # Bug#47809 2009-10-04 joro innodb-autoinc.test fails with valgrind errors with the innodb plugin
|
||||||
|
main.plugin_load @solaris # Bug#42144
|
||||||
|
|
||||||
|
ndb.* # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
|
||||||
|
rpl.rpl_cross_version* # Bug #43913 2009-10-26 joro rpl_cross_version can't pass on conflicts complainig clash with --slave-load-tm
|
||||||
|
rpl.rpl_get_master_version_and_clock* # Bug#46931 2009-08-26 alik rpl.rpl_get_master_version_and_clock fails on hpux11.31
|
||||||
|
rpl.rpl_innodb_bug28430* @solaris # Bug#46029
|
||||||
|
rpl.rpl_row_create_table* # Bug#45576: rpl_row_create_table fails on PB2
|
||||||
|
rpl.rpl_trigger* # Bug#47810 2009-10-04 joro rpl.rpl_trigger.test fails with valgrind errors with the innodb plugin
|
||||||
|
|
||||||
|
rpl_ndb.* # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
rpl_ndb.rpl_ndb_log # Bug#38998
|
rpl_ndb.rpl_ndb_log # Bug#38998
|
||||||
rpl.rpl_innodb_bug28430 # Bug#46029
|
|
||||||
|
stress.ddl_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
|
||||||
|
parts.ndb_dd_backuprestore # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.part_supported_sql_func_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_alter1_1_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_alter1_1_2_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_alter1_2_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_auto_increment_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_basic_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_engine_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_int_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_mgm_lc0_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_mgm_lc1_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_mgm_lc2_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_syntax_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
parts.partition_value_ndb # joro : NDB tests marked as experimental as agreed with bochklin
|
||||||
|
@ -270,3 +270,42 @@ INSERT INTO test.t1 VALUES (1), (2);
|
|||||||
CREATE TABLE test.t2 SELECT * FROM test.t1;
|
CREATE TABLE test.t2 SELECT * FROM test.t1;
|
||||||
USE test;
|
USE test;
|
||||||
DROP TABLES t1, t2;
|
DROP TABLES t1, t2;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug#46640
|
||||||
|
# This test verifies if the server_id stored in the "format
|
||||||
|
# description BINLOG statement" will override the server_id
|
||||||
|
# of the server executing the statements.
|
||||||
|
#
|
||||||
|
|
||||||
|
connect (fresh,localhost,root,,test);
|
||||||
|
connection fresh;
|
||||||
|
|
||||||
|
RESET MASTER;
|
||||||
|
CREATE TABLE t1 (a INT PRIMARY KEY);
|
||||||
|
|
||||||
|
# Format description event, with server_id = 10;
|
||||||
|
BINLOG '
|
||||||
|
3u9kSA8KAAAAZgAAAGoAAAABAAQANS4xLjM1LW1hcmlhLWJldGExLWRlYnVnLWxvZwAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAADe72RIEzgNAAgAEgAEBAQEEgAAUwAEGggAAAAICAgC
|
||||||
|
';
|
||||||
|
|
||||||
|
# What server_id is logged for a statement? Should be our own, not the
|
||||||
|
# one from the format description event.
|
||||||
|
INSERT INTO t1 VALUES (1);
|
||||||
|
|
||||||
|
# INSERT INTO t1 VALUES (2), with server_id=20. Check that this is logged
|
||||||
|
# with our own server id, not the 20 from the BINLOG statement.
|
||||||
|
BINLOG '
|
||||||
|
3u9kSBMUAAAAKQAAAJEBAAAAABoAAAAAAAAABHRlc3QAAnQxAAEDAAA=
|
||||||
|
3u9kSBcUAAAAIgAAALMBAAAQABoAAAAAAAEAAf/+AgAAAA==
|
||||||
|
';
|
||||||
|
|
||||||
|
# Show binlog events to check that server ids are correct.
|
||||||
|
--replace_column 1 # 2 # 5 #
|
||||||
|
--replace_regex /Server ver: .*, Binlog ver: .*/Server ver: #, Binlog ver: #/ /table_id: [0-9]+/table_id: #/
|
||||||
|
SHOW BINLOG EVENTS;
|
||||||
|
|
||||||
|
DROP TABLE t1;
|
||||||
|
disconnect fresh;
|
||||||
|
|
||||||
|
300
mysql-test/extra/binlog_tests/binlog_failure_mixing_engines.test
Normal file
300
mysql-test/extra/binlog_tests/binlog_failure_mixing_engines.test
Normal file
@ -0,0 +1,300 @@
|
|||||||
|
################################################################################
|
||||||
|
# Let
|
||||||
|
# - B be begin, C commit and R rollback.
|
||||||
|
# - T a statement that accesses and changes only transactional tables, i.e.
|
||||||
|
# T-tables
|
||||||
|
# - N a statement that accesses and changes only non-transactional tables,
|
||||||
|
# i.e, N-tables.
|
||||||
|
# - M be a mixed statement, i.e. a statement that updates both T- and
|
||||||
|
# N-tables.
|
||||||
|
# - M* be a mixed statement that fails while updating either a T
|
||||||
|
# or N-table.
|
||||||
|
# - N* be a statement that fails while updating a N-table.
|
||||||
|
#
|
||||||
|
# In this test case, when changes are logged as rows either in the RBR or MIXED
|
||||||
|
# modes, we check if a M* statement that happens early in a transaction is
|
||||||
|
# written to the binary log outside the boundaries of the transaction and
|
||||||
|
# wrapped up in a BEGIN/ROLLBACK. This is done to keep the slave consistent with
|
||||||
|
# the master as the rollback will keep the changes on N-tables and undo them on
|
||||||
|
# T-tables. In particular, we expect the following behavior:
|
||||||
|
#
|
||||||
|
# 1. B M* T C would generate in the binlog B M* R B T C.
|
||||||
|
# 2. B M M* C would generate in the binlog B M M* C.
|
||||||
|
# 3. B M* M* T C would generate in the binlog B M* R B M* R B T C.
|
||||||
|
#
|
||||||
|
# SBR is not considered in this test because a failing statement is written to
|
||||||
|
# the binary along with the error code such that a slave executes and rolls it
|
||||||
|
# back, thus undoing the effects on T-tables.
|
||||||
|
#
|
||||||
|
# Note that, in the first case, we are not preserving history from the master as
|
||||||
|
# we are introducing a rollback that never happened. However, this seems to be
|
||||||
|
# more acceptable than making the slave diverge. In the second case, the slave
|
||||||
|
# will diverge as the changes on T-tables that originated from the M statement
|
||||||
|
# are rolled back on the master but not on the slave. Unfortunately, we cannot
|
||||||
|
# simply roll the transaction back as this would undo any uncommitted changes
|
||||||
|
# on T-tables.
|
||||||
|
#
|
||||||
|
# We check two more cases. First, INSERT...SELECT* which produces the following
|
||||||
|
# results:
|
||||||
|
#
|
||||||
|
# 1. B T INSERT M...SELECT* C" with an error in INSERT M...SELECT* generates in
|
||||||
|
# the binlog the following entries: "Nothing".
|
||||||
|
# 2. B INSERT M...SELECT* C" with an error in INSERT M...SELECT* generates in
|
||||||
|
# the binlog the following entries: B INSERT M...SELECT* R.
|
||||||
|
#
|
||||||
|
# Finally, we also check if any N statement that happens early in a transaction
|
||||||
|
# (i.e. before any T or M statement) is written to the binary log outside the
|
||||||
|
# boundaries of the transaction. In particular, we expect the following
|
||||||
|
# behavior:
|
||||||
|
#
|
||||||
|
# 1. B N N T C would generate in the binlog B N C B N C B T C.
|
||||||
|
# 2. B N N T R would generate in the binlog B N C B N C B T R.
|
||||||
|
# 3. B N* N* T C would generate in the binlog B N R B N R B T C.
|
||||||
|
# 4. B N* N* T R would generate in the binlog B N R B N R B T R.
|
||||||
|
# 5. B N N T N T C would generate in the binlog B N C B N C B T N T C.
|
||||||
|
# 6. B N N T N T R would generate in the binlog the B N C B N C B T N T R.
|
||||||
|
#
|
||||||
|
# Such issues do not happen in SBR. In RBR and MBR, a full-fledged fix will be
|
||||||
|
# pushed after the WL#2687.
|
||||||
|
#
|
||||||
|
# Please, remove this test case after pushing WL#2687.
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
|
||||||
|
--echo ###################################################################################
|
||||||
|
--echo # CONFIGURATION
|
||||||
|
--echo ###################################################################################
|
||||||
|
CREATE TABLE nt_1 (a text, b int PRIMARY KEY) ENGINE = MyISAM;
|
||||||
|
CREATE TABLE nt_2 (a text, b int PRIMARY KEY) ENGINE = MyISAM;
|
||||||
|
CREATE TABLE tt_1 (a text, b int PRIMARY KEY) ENGINE = Innodb;
|
||||||
|
CREATE TABLE tt_2 (a text, b int PRIMARY KEY) ENGINE = Innodb;
|
||||||
|
|
||||||
|
DELIMITER |;
|
||||||
|
|
||||||
|
CREATE TRIGGER tr_i_tt_1_to_nt_1 BEFORE INSERT ON tt_1 FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
INSERT INTO nt_1 VALUES (NEW.a, NEW.b);
|
||||||
|
END|
|
||||||
|
|
||||||
|
CREATE TRIGGER tr_i_nt_2_to_tt_2 BEFORE INSERT ON nt_2 FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
INSERT INTO tt_2 VALUES (NEW.a, NEW.b);
|
||||||
|
END|
|
||||||
|
|
||||||
|
DELIMITER ;|
|
||||||
|
|
||||||
|
--echo ###################################################################################
|
||||||
|
--echo # CHECK HISTORY IN BINLOG
|
||||||
|
--echo ###################################################################################
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo *** "B M* T C" with error in M* generates in the binlog the "B M* R B T C" entries
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
INSERT INTO nt_1 VALUES ("new text 1", 1);
|
||||||
|
BEGIN;
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO tt_1 VALUES (USER(), 2), (USER(), 1);
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 3", 3);
|
||||||
|
COMMIT;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 4", 4);
|
||||||
|
BEGIN;
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO nt_2 VALUES (USER(), 5), (USER(), 4);
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 6", 6);
|
||||||
|
COMMIT;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo *** "B M M* T C" with error in M* generates in the binlog the "B M M* T C" entries
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
INSERT INTO nt_1 VALUES ("new text 10", 10);
|
||||||
|
BEGIN;
|
||||||
|
INSERT INTO tt_1 VALUES ("new text 7", 7), ("new text 8", 8);
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO tt_1 VALUES (USER(), 9), (USER(), 10);
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 11", 11);
|
||||||
|
COMMIT;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 15", 15);
|
||||||
|
BEGIN;
|
||||||
|
INSERT INTO nt_2 VALUES ("new text 12", 12), ("new text 13", 13);
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO nt_2 VALUES (USER(), 14), (USER(), 15);
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 16", 16);
|
||||||
|
COMMIT;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo *** "B M* M* T C" with error in M* generates in the binlog the "B M* R B M* R B T C" entries
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
INSERT INTO nt_1 VALUES ("new text 18", 18);
|
||||||
|
INSERT INTO nt_1 VALUES ("new text 20", 20);
|
||||||
|
BEGIN;
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO tt_1 VALUES (USER(), 17), (USER(), 18);
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO tt_1 VALUES (USER(), 19), (USER(), 20);
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 21", 21);
|
||||||
|
COMMIT;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 23", 23);
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 25", 25);
|
||||||
|
BEGIN;
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO nt_2 VALUES (USER(), 22), (USER(), 23);
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO nt_2 VALUES (USER(), 24), (USER(), 25);
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 26", 26);
|
||||||
|
COMMIT;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo *** "B T INSERT M...SELECT* C" with an error in INSERT M...SELECT* generates
|
||||||
|
--echo *** in the binlog the following entries: "Nothing".
|
||||||
|
--echo *** There is a bug in that will be fixed after WL#2687. Please, check BUG#47175 for further details.
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
TRUNCATE TABLE nt_2;
|
||||||
|
TRUNCATE TABLE tt_2;
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 7", 7);
|
||||||
|
BEGIN;
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 27", 27);
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO nt_2(a, b) SELECT USER(), b FROM nt_1;
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 28", 28);
|
||||||
|
ROLLBACK;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo *** "B INSERT M..SELECT* C" with an error in INSERT M...SELECT* generates
|
||||||
|
--echo *** in the binlog the following entries: "B INSERT M..SELECT* R".
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
TRUNCATE TABLE nt_2;
|
||||||
|
TRUNCATE TABLE tt_2;
|
||||||
|
INSERT INTO tt_2 VALUES ("new text 7", 7);
|
||||||
|
BEGIN;
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO nt_2(a, b) SELECT USER(), b FROM nt_1;
|
||||||
|
COMMIT;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo *** "B N N T C" generates in the binlog the "B N C B N C B T C" entries
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
TRUNCATE TABLE nt_1;
|
||||||
|
TRUNCATE TABLE tt_2;
|
||||||
|
BEGIN;
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 1);
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 2);
|
||||||
|
INSERT INTO tt_2 VALUES (USER(), 3);
|
||||||
|
COMMIT;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo *** "B N N T R" generates in the binlog the "B N C B N C B T R" entries
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
BEGIN;
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 4);
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 5);
|
||||||
|
INSERT INTO tt_2 VALUES (USER(), 6);
|
||||||
|
ROLLBACK;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo *** "B N* N* T C" with error in N* generates in the binlog the "B N R B N R B T C" entries
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
BEGIN;
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 7), (USER(), 1);
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 8), (USER(), 1);
|
||||||
|
INSERT INTO tt_2 VALUES (USER(), 9);
|
||||||
|
COMMIT;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo *** "B N* N* T R" with error in N* generates in the binlog the "B N R B N R B T R" entries
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
BEGIN;
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 10), (USER(), 1);
|
||||||
|
--error ER_DUP_ENTRY
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 11), (USER(), 1);
|
||||||
|
INSERT INTO tt_2 VALUES (USER(), 12);
|
||||||
|
ROLLBACK;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo *** "B N N T N T C" generates in the binlog the "B N C B N C B T N T C" entries
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
BEGIN;
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 13);
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 14);
|
||||||
|
INSERT INTO tt_2 VALUES (USER(), 15);
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 16);
|
||||||
|
INSERT INTO tt_2 VALUES (USER(), 17);
|
||||||
|
COMMIT;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo
|
||||||
|
--echo *** "B N N T N T R" generates in the binlog the "B N C B N C B T N T R" entries
|
||||||
|
--echo
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
BEGIN;
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 18);
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 19);
|
||||||
|
INSERT INTO tt_2 VALUES (USER(), 20);
|
||||||
|
INSERT INTO nt_1 VALUES (USER(), 21);
|
||||||
|
INSERT INTO tt_2 VALUES (USER(), 22);
|
||||||
|
ROLLBACK;
|
||||||
|
--source include/show_binlog_events.inc
|
||||||
|
|
||||||
|
--echo ###################################################################################
|
||||||
|
--echo # CLEAN
|
||||||
|
--echo ###################################################################################
|
||||||
|
|
||||||
|
DROP TABLE tt_1;
|
||||||
|
DROP TABLE tt_2;
|
||||||
|
DROP TABLE nt_1;
|
||||||
|
DROP TABLE nt_2;
|
@ -1,27 +1,72 @@
|
|||||||
|
|
||||||
--disable_warnings
|
--disable_warnings
|
||||||
drop database if exists `drop-temp+table-test`;
|
DROP DATABASE IF EXISTS `drop-temp+table-test`;
|
||||||
--enable_warnings
|
--enable_warnings
|
||||||
|
|
||||||
connect (con1,localhost,root,,);
|
connect (con1,localhost,root,,);
|
||||||
connect (con2,localhost,root,,);
|
connect (con2,localhost,root,,);
|
||||||
connection con1;
|
connection con1;
|
||||||
reset master;
|
RESET MASTER;
|
||||||
create database `drop-temp+table-test`;
|
CREATE DATABASE `drop-temp+table-test`;
|
||||||
use `drop-temp+table-test`;
|
USE `drop-temp+table-test`;
|
||||||
create temporary table shortn1 (a int);
|
CREATE TEMPORARY TABLE shortn1 (a INT);
|
||||||
create temporary table `table:name` (a int);
|
CREATE TEMPORARY TABLE `table:name` (a INT);
|
||||||
create temporary table shortn2 (a int);
|
CREATE TEMPORARY TABLE shortn2 (a INT);
|
||||||
select get_lock("a",10);
|
|
||||||
|
##############################################################################
|
||||||
|
# BUG#46572 DROP TEMPORARY table IF EXISTS does not have a consistent behavior
|
||||||
|
# in ROW mode
|
||||||
|
#
|
||||||
|
# In RBR, 'DROP TEMPORARY TABLE ...' statement should never be binlogged no
|
||||||
|
# matter if the tables exist or not. In contrast, both in SBR and MBR, the
|
||||||
|
# statement should be always binlogged no matter if the tables exist or not.
|
||||||
|
##############################################################################
|
||||||
|
CREATE TEMPORARY TABLE tmp(c1 int);
|
||||||
|
CREATE TEMPORARY TABLE tmp1(c1 int);
|
||||||
|
CREATE TEMPORARY TABLE tmp2(c1 int);
|
||||||
|
CREATE TEMPORARY TABLE tmp3(c1 int);
|
||||||
|
CREATE TABLE t(c1 int);
|
||||||
|
|
||||||
|
DROP TEMPORARY TABLE IF EXISTS tmp;
|
||||||
|
|
||||||
|
--disable_warnings
|
||||||
|
# Before fixing BUG#46572, 'DROP TEMPORARY TABLE IF EXISTS...' statement was
|
||||||
|
# binlogged when the table did not exist in RBR.
|
||||||
|
DROP TEMPORARY TABLE IF EXISTS tmp;
|
||||||
|
|
||||||
|
# In RBR, 'DROP TEMPORARY TABLE ...' statement is never binlogged no matter if
|
||||||
|
# the tables exist or not.
|
||||||
|
DROP TEMPORARY TABLE IF EXISTS tmp, tmp1;
|
||||||
|
DROP TEMPORARY TABLE tmp3;
|
||||||
|
|
||||||
|
#In RBR, tmp2 will NOT be binlogged, because it is a temporary table.
|
||||||
|
DROP TABLE IF EXISTS tmp2, t;
|
||||||
|
|
||||||
|
#In RBR, tmp2 will be binlogged, because it does not exist and master do not know
|
||||||
|
# whether it is a temporary table or not.
|
||||||
|
DROP TABLE IF EXISTS tmp2, t;
|
||||||
|
--enable_warnings
|
||||||
|
|
||||||
|
SELECT GET_LOCK("a",10);
|
||||||
|
|
||||||
|
#
|
||||||
|
# BUG48216 Replication fails on all slaves after upgrade to 5.0.86 on master
|
||||||
|
#
|
||||||
|
# When the session is closed, any temporary tables of the session are dropped
|
||||||
|
# and are binlogged. But it will be binlogged with a wrong database name when
|
||||||
|
# the length of the database name('drop-temp-table-test') is greater than the
|
||||||
|
# current database name('test').
|
||||||
|
#
|
||||||
|
USE test;
|
||||||
disconnect con1;
|
disconnect con1;
|
||||||
|
|
||||||
connection con2;
|
connection con2;
|
||||||
# We want to SHOW BINLOG EVENTS, to know what was logged. But there is no
|
# We want to SHOW BINLOG EVENTS, to know what was logged. But there is no
|
||||||
# guarantee that logging of the terminated con1 has been done yet.
|
# guarantee that logging of the terminated con1 has been done yet.
|
||||||
# To be sure that logging has been done, we use a user lock.
|
# To be sure that logging has been done, we use a user lock.
|
||||||
select get_lock("a",10);
|
SELECT GET_LOCK("a",10);
|
||||||
let $VERSION=`select version()`;
|
let $VERSION=`SELECT VERSION()`;
|
||||||
source include/show_binlog_events.inc;
|
source include/show_binlog_events.inc;
|
||||||
drop database `drop-temp+table-test`;
|
DROP DATABASE `drop-temp+table-test`;
|
||||||
|
|
||||||
# End of 4.1 tests
|
# End of 4.1 tests
|
||||||
|
@ -163,5 +163,81 @@ show create table t1;
|
|||||||
connection master;
|
connection master;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
# End cleanup
|
#
|
||||||
|
# BUG#45999 Row based replication fails when auto_increment field = 0.
|
||||||
|
# Store engine of Slaves auto-generates new sequence numbers for
|
||||||
|
# auto_increment fields if the values of them are 0. There is an inconsistency
|
||||||
|
# between slave and master. When MODE_NO_AUTO_VALUE_ON_ZERO are masters treat
|
||||||
|
#
|
||||||
|
source include/master-slave-reset.inc;
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
--disable_warnings
|
||||||
|
DROP TABLE IF EXISTS t1;
|
||||||
|
DROP TABLE IF EXISTS t2;
|
||||||
|
--enable_warnings
|
||||||
|
|
||||||
|
eval CREATE TABLE t1 (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY) ENGINE=$engine_type;
|
||||||
|
eval CREATE TABLE t2 (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY) ENGINE=$engine_type2;
|
||||||
|
SET SQL_MODE='';
|
||||||
|
# Value of the id will be 1;
|
||||||
|
INSERT INTO t1 VALUES(NULL);
|
||||||
|
INSERT INTO t2 VALUES(NULL);
|
||||||
|
SELECT * FROM t1;
|
||||||
|
SELECT * FROM t2;
|
||||||
|
# Value of the id will be 2;
|
||||||
|
INSERT INTO t1 VALUES();
|
||||||
|
INSERT INTO t2 VALUES();
|
||||||
|
SELECT * FROM t1;
|
||||||
|
SELECT * FROM t2;
|
||||||
|
# Value of the id will be 3. The master treats 0 as NULL or empty because
|
||||||
|
# NO_AUTO_VALUE_ON_ZERO is not assign to SQL_MODE.
|
||||||
|
INSERT INTO t1 VALUES(0);
|
||||||
|
INSERT INTO t2 VALUES(0);
|
||||||
|
SELECT * FROM t1;
|
||||||
|
SELECT * FROM t2;
|
||||||
|
|
||||||
|
SET SQL_MODE=NO_AUTO_VALUE_ON_ZERO;
|
||||||
|
# Value of the id will be 0. The master does not treat 0 as NULL or empty
|
||||||
|
# because NO_AUTO_VALUE_ON_ZERO has assigned to SQL_MODE.
|
||||||
|
INSERT INTO t1 VALUES(0);
|
||||||
|
INSERT INTO t2 VALUES(0);
|
||||||
|
SELECT * FROM t1;
|
||||||
|
SELECT * FROM t2;
|
||||||
|
|
||||||
|
INSERT INTO t1 VALUES(4);
|
||||||
|
INSERT INTO t2 VALUES(4);
|
||||||
|
FLUSH LOGS;
|
||||||
|
sync_slave_with_master;
|
||||||
|
|
||||||
|
let $diff_table_1= master:test.t1;
|
||||||
|
let $diff_table_2= slave:test.t1;
|
||||||
|
source include/diff_tables.inc;
|
||||||
|
|
||||||
|
let $diff_table_1= master:test.t2;
|
||||||
|
let $diff_table_2= slave:test.t2;
|
||||||
|
source include/diff_tables.inc;
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
DROP TABLE t1;
|
||||||
|
DROP TABLE t2;
|
||||||
|
sync_slave_with_master;
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
let $MYSQLD_DATADIR= `SELECT @@DATADIR`;
|
||||||
|
--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000001 | $MYSQL test
|
||||||
|
sync_slave_with_master;
|
||||||
|
|
||||||
|
let $diff_table_1= master:test.t1;
|
||||||
|
let $diff_table_2= slave:test.t1;
|
||||||
|
source include/diff_tables.inc;
|
||||||
|
|
||||||
|
let $diff_table_1= master:test.t2;
|
||||||
|
let $diff_table_2= slave:test.t2;
|
||||||
|
source include/diff_tables.inc;
|
||||||
|
|
||||||
|
# End cleanup
|
||||||
|
DROP TABLE t1;
|
||||||
|
DROP TABLE t2;
|
||||||
|
SET SQL_MODE='';
|
||||||
sync_slave_with_master;
|
sync_slave_with_master;
|
||||||
|
@ -0,0 +1,44 @@
|
|||||||
|
#
|
||||||
|
# This test verifies if inserting data into view that invokes a
|
||||||
|
# trigger will make the autoinc values become inconsistent on
|
||||||
|
# master and slave.
|
||||||
|
#
|
||||||
|
connection master;
|
||||||
|
CREATE TABLE t1(i1 int not null auto_increment, c1 INT, primary key(i1)) engine=innodb;
|
||||||
|
CREATE TABLE t2(i1 int not null auto_increment, c2 INT, primary key(i1)) engine=innodb;
|
||||||
|
CREATE TABLE t3(i1 int not null auto_increment, a int, primary key(i1)) engine=innodb;
|
||||||
|
eval create trigger tr16 $insert_action on t1 for each row insert into t3(a) values(new.c1);
|
||||||
|
eval create trigger tr17 $insert_action on t2 for each row insert into t3(a) values(new.c2);
|
||||||
|
begin;
|
||||||
|
INSERT INTO t1(c1) VALUES (11), (12);
|
||||||
|
INSERT INTO t2(c2) VALUES (13), (14);
|
||||||
|
|
||||||
|
CREATE VIEW v16 AS SELECT c1, c2 FROM t1, t2;
|
||||||
|
|
||||||
|
INSERT INTO v16(c1) VALUES (15),(16);
|
||||||
|
INSERT INTO v16(c2) VALUES (17),(18);
|
||||||
|
|
||||||
|
connection master1;
|
||||||
|
INSERT INTO v16(c1) VALUES (19),(20);
|
||||||
|
INSERT INTO v16(c2) VALUES (21),(22);
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
INSERT INTO v16(c1) VALUES (23), (24);
|
||||||
|
INSERT INTO v16(c1) VALUES (25), (26);
|
||||||
|
commit;
|
||||||
|
sync_slave_with_master;
|
||||||
|
--echo #Test if the results are consistent on master and slave
|
||||||
|
--echo #for 'INSERT DATA INTO VIEW WHICH INVOKES TRIGGERS'
|
||||||
|
let $diff_table_1=master:test.t3;
|
||||||
|
let $diff_table_2=slave:test.t3;
|
||||||
|
source include/diff_tables.inc;
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
DROP TABLE t1;
|
||||||
|
DROP TABLE t2;
|
||||||
|
DROP TABLE t3;
|
||||||
|
DROP VIEW v16;
|
||||||
|
sync_slave_with_master;
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,82 @@
|
|||||||
|
#
|
||||||
|
# This test verifies if concurrent transactions that invoke a
|
||||||
|
# trigger that inserts more than one values into one or more
|
||||||
|
# tables with an auto_increment column will make the autoinc
|
||||||
|
# values become inconsistent on master and slave.
|
||||||
|
#
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
create table t1(a int, b int) engine=innodb;
|
||||||
|
create table t2(i1 int not null auto_increment, a int, primary key(i1)) engine=innodb;
|
||||||
|
eval create trigger tr1 $trigger_action on t1 for each row insert into t2(a) values(6);
|
||||||
|
|
||||||
|
create table t3(a int, b int) engine=innodb;
|
||||||
|
create table t4(i1 int not null auto_increment, a int, primary key(i1)) engine=innodb;
|
||||||
|
create table t5(a int) engine=innodb;
|
||||||
|
delimiter |;
|
||||||
|
eval create trigger tr2 $trigger_action on t3 for each row begin
|
||||||
|
insert into t4(a) values(f1_insert_triggered());
|
||||||
|
insert into t4(a) values(f1_insert_triggered());
|
||||||
|
insert into t5(a) values(8);
|
||||||
|
end |
|
||||||
|
delimiter ;|
|
||||||
|
|
||||||
|
create table t6(i1 int not null auto_increment, a int, primary key(i1)) engine=innodb;
|
||||||
|
delimiter //;
|
||||||
|
CREATE FUNCTION f1_insert_triggered() RETURNS INTEGER
|
||||||
|
BEGIN
|
||||||
|
INSERT INTO t6(a) values(2),(3);
|
||||||
|
RETURN 1;
|
||||||
|
END//
|
||||||
|
delimiter ;//
|
||||||
|
|
||||||
|
begin;
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
insert into t1(a,b) values(1,1),(2,1);
|
||||||
|
insert into t3(a,b) values(1,1),(2,1);
|
||||||
|
update t1 set a = a + 5 where b = 1;
|
||||||
|
update t3 set a = a + 5 where b = 1;
|
||||||
|
delete from t1 where b = 1;
|
||||||
|
delete from t3 where b = 1;
|
||||||
|
|
||||||
|
connection master1;
|
||||||
|
#The default autocommit is set to 1, so the statement is auto committed
|
||||||
|
insert into t2(a) values(3);
|
||||||
|
insert into t4(a) values(3);
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
commit;
|
||||||
|
insert into t1(a,b) values(4,2);
|
||||||
|
insert into t3(a,b) values(4,2);
|
||||||
|
update t1 set a = a + 5 where b = 2;
|
||||||
|
update t3 set a = a + 5 where b = 2;
|
||||||
|
delete from t1 where b = 2;
|
||||||
|
delete from t3 where b = 2;
|
||||||
|
--echo # To verify if insert/update in an autoinc column causes statement to be logged in row format
|
||||||
|
source include/show_binlog_events.inc;
|
||||||
|
commit;
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
sync_slave_with_master;
|
||||||
|
--echo #Test if the results are consistent on master and slave
|
||||||
|
--echo #for 'INVOKES A TRIGGER with $trigger_action action'
|
||||||
|
let $diff_table_1=master:test.t2;
|
||||||
|
let $diff_table_2=slave:test.t2;
|
||||||
|
source include/diff_tables.inc;
|
||||||
|
let $diff_table_1=master:test.t4;
|
||||||
|
let $diff_table_2=slave:test.t4;
|
||||||
|
source include/diff_tables.inc;
|
||||||
|
let $diff_table_1=master:test.t6;
|
||||||
|
let $diff_table_2=slave:test.t6;
|
||||||
|
source include/diff_tables.inc;
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
DROP TABLE t1;
|
||||||
|
DROP TABLE t2;
|
||||||
|
DROP TABLE t3;
|
||||||
|
DROP TABLE t4;
|
||||||
|
DROP TABLE t5;
|
||||||
|
DROP TABLE t6;
|
||||||
|
DROP FUNCTION f1_insert_triggered;
|
||||||
|
sync_slave_with_master;
|
||||||
|
|
@ -0,0 +1,57 @@
|
|||||||
|
#
|
||||||
|
# This test verifies if concurrent transactions that call a
|
||||||
|
# function which invokes a 'after/before insert action' trigger
|
||||||
|
# that inserts more than one values into a table with autoinc
|
||||||
|
# column will make the autoinc values become inconsistent on
|
||||||
|
# master and slave.
|
||||||
|
#
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
create table t1(a int) engine=innodb;
|
||||||
|
create table t2(i1 int not null auto_increment, a int, primary key(i1)) engine=innodb;
|
||||||
|
create table t3(i1 int not null auto_increment, a int, primary key(i1)) engine=innodb;
|
||||||
|
delimiter |;
|
||||||
|
CREATE FUNCTION f1_two_inserts_trigger() RETURNS INTEGER
|
||||||
|
BEGIN
|
||||||
|
INSERT INTO t2(a) values(2),(3);
|
||||||
|
INSERT INTO t2(a) values(2),(3);
|
||||||
|
RETURN 1;
|
||||||
|
END |
|
||||||
|
eval create trigger tr11 $insert_action on t2 for each row begin
|
||||||
|
insert into t3(a) values(new.a);
|
||||||
|
insert into t3(a) values(new.a);
|
||||||
|
end |
|
||||||
|
delimiter ;|
|
||||||
|
begin;
|
||||||
|
let $binlog_start= query_get_value("SHOW MASTER STATUS", Position, 1);
|
||||||
|
insert into t1(a) values(f1_two_inserts_trigger());
|
||||||
|
|
||||||
|
connection master1;
|
||||||
|
#The default autocommit is set to 1, so the statement is auto committed
|
||||||
|
insert into t2(a) values(4),(5);
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
commit;
|
||||||
|
insert into t1(a) values(f1_two_inserts_trigger());
|
||||||
|
--echo # To verify if insert/update in an autoinc column causes statement to be logged in row format
|
||||||
|
source include/show_binlog_events.inc;
|
||||||
|
commit;
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
sync_slave_with_master;
|
||||||
|
--echo #Test if the results are consistent on master and slave
|
||||||
|
--echo #for 'CALLS A FUNCTION which INVOKES A TRIGGER with $insert_action action'
|
||||||
|
let $diff_table_1=master:test.t2;
|
||||||
|
let $diff_table_2=slave:test.t2;
|
||||||
|
source include/diff_tables.inc;
|
||||||
|
let $diff_table_1=master:test.t3;
|
||||||
|
let $diff_table_2=slave:test.t3;
|
||||||
|
source include/diff_tables.inc;
|
||||||
|
|
||||||
|
connection master;
|
||||||
|
drop table t1;
|
||||||
|
drop table t2;
|
||||||
|
drop table t3;
|
||||||
|
drop function f1_two_inserts_trigger;
|
||||||
|
sync_slave_with_master;
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user