Loading BUILD/compile-alpha-ccc +1 −1 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ make -k clean /bin/rm -f config.cache mysql-*.tar.gz aclocal; autoheader; aclocal; automake; autoconf CC=ccc CFLAGS="-fast -O3 -fomit-frame-pointer" CXX=gcc CXXFLAGS="-O6 -fomit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti -mcpu=ev6 -Wa,-mev6" CXXLDFLAGS='/usr/lib/compaq/libots-2.2.7/libots.so /usr/lib/compaq/cpml-5.0.0/libcpml_ev6.a' ./configure --prefix=/usr/local/mysql --disable-shared --with-extra-charsets=complex CC=ccc CFLAGS="-fast -O3 -fomit-frame-pointer" CXX=gcc CXXFLAGS="-O6 -fomit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti -mcpu=ev6 -Wa,-mev6" CXXLDFLAGS='/usr/lib/compaq/libots-2.2.7/libots.so /usr/lib/compaq/cpml-5.0.0/libcpml_ev6.a' ./configure --prefix=/usr/local/mysql --disable-shared --with-extra-charsets=complex --enable-thread-safe-client make if [ $? = 0 ] then Loading Docs/bk.txt 0 → 100644 +64 −0 Original line number Diff line number Diff line Mail by sasha, should be rewritten as a HOWTO sometimes ----------- I have set up a repository with BitKeeper on work. There are still some things about it that I would like to learn, but I have gotten far enough with it to replace CVS functionality were are currently using, so let's just go ahead and get started on it. Please follow the instructions below (make sure to save the message for future reference): a) http://www.bitmover.com/download user: beta password: get bitkeeper get the version appropriate for your platform - download it to a temp directory, chmod +x and then run it. You will have to tell it which directory to install, for consistency, let's use /usr/local/bin b) we will take advantage of bk capablity of working with master/slave repositories. The master will be on work.mysql.com, the slaves will be our individual machines. The master repository has already been set up on work, so you will need just to set up a slave repository on your machine: mkdir bk cd bk bk clone yourusername@work:/home/bk/mysql mysql cd mysql bk -r edit Now you have the entire source tree in the current directory. Let's compile it: BUILD/compile-pentium-debug After you edit a file, you need to check it in using bk citool or bk ci filename. Note that ci is different than commit - you ci a file, but you commit a change set. This is a very nice concept - instead of thinking of each individual file as CVS does, bk groups the changes you are making and allows you to document what you actually did between the commits as a whole, rather than just commenting on every file. When you commit, bk will ask you to comment on the change set. Commit is done just to your local repository. To make your changes global, you will need to run bk push. Be careful with that - it is a good idea to run bk push -l -n first too see what you are just about to push to the master repository. When somebody does a push, you will be getting a email ( I will set this up to day). You will then need to execute bk pull to update your sources. If there are any conflicts, bk will force you to resolve them by asking you questions on what to do with each conflict. To learn more about bk, use bk helptool - I will be doing this a lot in the next couple of days :-) If you find bugs or have questions/feature suggestions/comments for developers, feel free to e-mail dev@bitmover.com . Their developers, and especially the president of the company Larry McCoy really like MySQL and are very anxious to help us. Make sure it is obvious that you work for MySQL, of course. And, of course, do not bug them with little things that you can figure out on your own or with my help - they were nice to offer us support, but we should not abuse it. If you are working on 3.23 MySQL source, please make sure to convert to bk ASAP before you do any further developement - otherwise, things will get exponentially worse as the code mass increases. I will work on mysql-4.0 next and try to set it up so that when we update 3.23 source tree, the update makes it to mysql-4.0. Docs/manual.texi +90 −60 Original line number Diff line number Diff line Loading @@ -253,7 +253,7 @@ Windows notes * NT start:: Starting @strong{MySQL} on NT / Win2000 * Windows running:: Running @strong{MySQL} on Windows * Windows and SSH:: Connecting to a remote @strong{MySQL} from Windows with SSH * Windows symbolic links:: Splitting data across different disks under Windows * Windows symbolic links:: Splitting data across different disks under Win32 * Windows compiling:: Compiling MySQL clients on Windows. * Windows vs Unix:: @strong{MySQL}-Windows compared to Unix @strong{MySQL} Loading Loading @@ -653,6 +653,7 @@ Solving some common problems with MySQL * Log Replication:: Database replication with update log * Backup:: Database backups * Update log:: The update log * Slow query log:: * Multiple servers:: Running multiple @strong{MySQL} servers on the same machine MySQL client tools and APIs Loading Loading @@ -753,6 +754,7 @@ How MySQL compares to @code{mSQL} MySQL internals * MySQL threads:: MySQL threads * MySQL full-text search:: MySQL full-text search MySQL change history Loading Loading @@ -8368,13 +8370,17 @@ Client error messages in given language. May be given as a full path. @item -l, --log[=file] Log connections and queries to file @item --log-isam[=file] Log all ISAM/MyISAM changes to file (only used when debugging ISAM/MyISAM). @item --log-slow-queries[=file] Log all queries that has taken more than @code{long_query_time} to execute to file. @xref{Slow query log}. @item --log-update[=file] Log updates to @code{file.#} where @code{#} is a unique number if not given. @xref{Update log}. @item --log-isam[=file] Log all isam changes to file. @item --log-long-format Log some extra information to update log. Loading Loading @@ -8692,6 +8698,7 @@ The following lists tell what you have to watch out for when upgrading to 3.23: (-g) by default. This option can be disabled with --enable-named-commands (-G). This may cause incompatibility problems in some cases, for example in SQL scripts that use named commands without a semicolon, etc. ! Long format commands still work from the first line. @item The default return type of @code{IF} will now depend on both arguments and not only the first argument. @item @code{AUTO_INCREMENT} will not work with negative numbers. Loading Loading @@ -16872,7 +16879,7 @@ RENAME TABLE current_database.table_name TO other_database.table_name; @end example When you execute @code{RENAME}, you can't have any locked tables or active transactions. You must also have the @code{ALTER TABLE} active transactions. You must also have the @code{ALTER} and @code{DROP} privilege on the original table and @code{CREATE} and @code{INSERT} privilege on the new table. Loading Loading @@ -18543,7 +18550,7 @@ have.. @item @code{Opened_tables} @tab Number of tables that have been opened. @item @code{Questions} @tab Number of queries sent to the server. @item @code{Slow_launch_threads} @tab Number of threads that has taken more than @code{slow_launch_time} to connect. @item @code{Slow_queries} @tab Number of queries that has taken more than @code{long_query_time} @item @code{Slow_queries} @tab Number of queries that has taken more than @code{long_query_time}. @xref{Slow query log}. @item @code{Threads_cached} @tab Number of threads in the thread cache. @item @code{Threads_connected} @tab Number of currently open connections. @item @code{Threads_running} @tab Number of threads that are not sleeping. Loading Loading @@ -18773,7 +18780,8 @@ Change all table names to lower case on disk. @item @code{long_query_time} If a query takes longer than this (in seconds), the @code{Slow_queries} counter will be incremented. will be incremented. If you are using @code{--log-slow-queries}, the query will be logged to the slow query logfile. @xref{Slow query log}. @item @code{max_allowed_packet} The maximum size of one packet. The message buffer is initialized to Loading Loading @@ -25569,7 +25577,7 @@ Continue even if we get an SQL error. Named commands are disabled. Use \* form only, or use named commands only in the beginning of a line ending with a semicolon (;) Since version 10.9 the client now starts with this option ENABLED by default! Disable with '-G' Disable with '-G'. Long format commands still work from the first line. @item -i, --ignore-space Ignore space after function names. @item -h, --host=... Loading Loading @@ -25736,7 +25744,7 @@ The @code{mysqladmin status} command result has the following columns: @item Uptime @tab Number of seconds the @strong{MySQL} server has been up. @item Threads @tab Number of active threads (clients). @item Questions @tab Number of questions from clients since @code{mysqld} was started. @item Slow queries @tab Queries that have taken more than @code{long_query_time} seconds. @item Slow queries @tab Queries that have taken more than @code{long_query_time} seconds. @xref{Slow query log}. @item Opens @tab How many tables @code{mysqld} has opened. @item Flush tables @tab Number of @code{flush ...}, @code{refresh} and @code{reload} commands. @item Open tables @tab Number of tables that are open now. Loading Loading @@ -27482,8 +27490,9 @@ The above command does the following: @itemize @bullet @item If standard logging (@code{--log}) is used, closes and reopens the log file. (@file{mysql.log} as default). If standard logging (@code{--log}) or slow query logging @code{--log-slow-queries} is used, closes and reopens the log file. (@file{mysql.log} and @file{mysql-slow.log} as default). @item If update logging (@code{--log-update}) is used, closes the update log and opens a new log file with a higher sequence number. Loading Loading @@ -29945,6 +29954,7 @@ Drop or rename @code{old_table} * Log Replication:: Database replication with update log * Backup:: Database backups * Update log:: The update log * Slow query log:: * Multiple servers:: Running multiple @strong{MySQL} servers on the same machine @end menu Loading Loading @@ -30050,7 +30060,7 @@ to be replaced with new ones when a new record duplicates an old record on a unique key value. @cindex Update log @node Update log, Multiple servers, Backup, Common problems @node Update log, Slow query log, Backup, Common problems @section The update log When started with the @code{--log-update[=file_name]} option, Loading Loading @@ -30104,6 +30114,20 @@ This can be useful if you have to revert to backup files after a crash and you want to redo the updates that occurred between the time of the backup and the crash. @cindex Slow query log @node Slow query log, Multiple servers, Update log, Common problems @section The slow query log When started with the @code{--log-slow-queries[=file_name]} option, @code{mysqld} writes a log file containing all SQL commands that took more than @code{long_query_time} to execute. data. If no file name is given, it defaults to the name of the host machine suffixed with @code{-slow.log}. If file name is given, but it doesn't contain a path the file is written in the data directory. The slow query log can be used to find queries that takes a long time to execute and are thus candidates for optimization. @cindex Database replication @cindex Replication, database @cindex Database mirroring Loading @@ -30113,7 +30137,7 @@ another host and you want to replicate the changes that have been made to the master database. @xref{Log Replication}. @cindex Multiple servers @node Multiple servers, , Update log, Common problems @node Multiple servers, , Slow query log, Common problems @section Running multiple MySQL servers on the same machine There are circumstances when you might want to run multiple servers on the same Loading Loading @@ -30163,10 +30187,11 @@ by specifying them at runtime as options to @code{safe_mysqld}: shell> /path/to/safe_mysqld --socket=file_name --port=port_number @end example If you run the new server on the same database directory as another server with logging enabled, you should also specify the name of the log files to @code{safe_mysqld} with @code{--log} and @code{--log-update}. Otherwise, both servers may be trying to write to the same log file. If you run the new server on the same database directory as another server with logging enabled, you should also specify the name of the log files to @code{safe_mysqld} with @code{--log}, @code{--log-update} or @code{--log-slow-queries}. Otherwise, both servers may be trying to write to the same log file. @strong{Warning}: Normally you should never have two servers that update data in the same database! If your OS doesn't support fault-free system Loading Loading @@ -35665,6 +35690,7 @@ though, so 3.23 is not released as a stable version yet. (-g) by default. This option can be disabled with --enable-named-commands (-G). This may cause incompatibility problems in some cases, for example in SQL scripts that use named commands without a semicolon, etc. ! Long format commands still work from the first line. @item Fixed a problem when using many pending @code{DROP TABLE} statement at the same time. Loading Loading @@ -40362,15 +40388,19 @@ mysqld are using indexes properly. @xref{EXPLAIN, , @code{EXPLAIN}}. You should also test complicated queries that didn't complete within the @code{mysql} command line tool. If you find the text @code{mysqld restarted} in the error log file (normally named @file{hostname.err}) you have probably found a query that causes @code{mysqld} to fail. If this happens you should check all your tables with @code{myisamchk} (@pxref{Maintenance}), and test the queries in the @strong{MySQL} log files to see if one doesn't work. If you find such a query, try first upgrading to the newest @strong{MySQL} version. If this doesn't help and you can't find anything in the @code{mysql} mail archive, you should report the bug to @email{mysql@@lists.mysql.com}. Links to mail archives are available online at the @uref{http://www.mysql.com/documentation/, @strong{MySQL} You can find the queries that takes a long time to run by starting @code{mysqld} with @code{--log-slow-queries}. @xref{Slow query log}. If you find the text @code{mysqld restarted} in the error log file (normally named @file{hostname.err}) you have probably found a query that causes @code{mysqld} to fail. If this happens you should check all your tables with @code{myisamchk} (@pxref{Maintenance}), and test the queries in the @strong{MySQL} log files to see if one doesn't work. If you find such a query, try first upgrading to the newest @strong{MySQL} version. If this doesn't help and you can't find anything in the @code{mysql} mail archive, you should report the bug to @email{mysql@@lists.mysql.com}. Links to mail archives are available online at the @uref{http://www.mysql.com/documentation/, @strong{MySQL} documentation page}. If you get corrupted tables or if @code{mysqld} always fails after some Makefile.am +3 −1 Original line number Diff line number Diff line Loading @@ -26,7 +26,7 @@ SUBDIRS = include @docs_dirs@ @readline_dir@ @sql_client_dirs@ \ @bench_dirs@ support-files # Relink after clean CLEANFILES = linked_client_sources linked_server_sources CLEANFILES = linked_client_sources linked_server_sources linked_libmysql_sources linked_libmysql_r_sources # This is just so that the linking is done early. config.h: linked_client_sources linked_server_sources Loading @@ -36,9 +36,11 @@ linked_client_sources: @linked_client_targets@ linked_libmysql_sources: cd libmysql; $(MAKE) link_sources echo timestamp > linked_libmysql_sources linked_libmysql_r_sources: linked_libmysql_sources cd libmysql_r; $(MAKE) link_sources echo timestamp > linked_libmysql_r_sources #avoid recursive make calls in sql directory linked_server_sources: Loading client/mysql.cc +8 −7 Original line number Diff line number Diff line Loading @@ -402,7 +402,7 @@ CHANGEABLE_VAR changeable_vars[] = { static void usage(int version) { printf("%s Ver 10.10 Distrib %s, for %s (%s)\n", printf("%s Ver 10.11 Distrib %s, for %s (%s)\n", my_progname, MYSQL_SERVER_VERSION, SYSTEM_TYPE, MACHINE_TYPE); if (version) return; Loading Loading @@ -435,9 +435,10 @@ static void usage(int version) -g, --no-named-commands\n\ Named commands are disabled. Use \\* form only, or\n\ use named commands only in the beginning of a line\n\ ending with a semicolon (;)\n\ Since version 10.9 the client now starts with this\n\ option ENABLED by default! Disable with '-G'\n\ ending with a semicolon (;) Since version 10.9 the\n\ client now starts with this option ENABLED by\n\ default! Disable with '-G'. Long format commands\n\ still work from the first line.\n\ -i, --ignore-space Ignore space after function names.\n\ -h, --host=... Connect to host.\n\ -H, --html Produce HTML output.\n\ Loading Loading @@ -690,12 +691,12 @@ static int read_lines(bool execute_commands) if (!in_string && (line[0] == '#' || (line[0] == '-' && line[1] == '-') || line[0] == 0)) continue; // Skipp comment lines continue; // Skip comment lines /* Check if line is a mysql command line */ /* (We want to allow help, print and clear anywhere at line start */ if (execute_commands && !no_named_cmds && !in_string && (com=find_command(line,0))) if (execute_commands && (!no_named_cmds || glob_buffer.is_empty()) && !in_string && (com=find_command(line,0))) { if ((*com->func)(&glob_buffer,line) > 0) break; Loading Loading
BUILD/compile-alpha-ccc +1 −1 Original line number Diff line number Diff line Loading @@ -4,7 +4,7 @@ make -k clean /bin/rm -f config.cache mysql-*.tar.gz aclocal; autoheader; aclocal; automake; autoconf CC=ccc CFLAGS="-fast -O3 -fomit-frame-pointer" CXX=gcc CXXFLAGS="-O6 -fomit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti -mcpu=ev6 -Wa,-mev6" CXXLDFLAGS='/usr/lib/compaq/libots-2.2.7/libots.so /usr/lib/compaq/cpml-5.0.0/libcpml_ev6.a' ./configure --prefix=/usr/local/mysql --disable-shared --with-extra-charsets=complex CC=ccc CFLAGS="-fast -O3 -fomit-frame-pointer" CXX=gcc CXXFLAGS="-O6 -fomit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti -mcpu=ev6 -Wa,-mev6" CXXLDFLAGS='/usr/lib/compaq/libots-2.2.7/libots.so /usr/lib/compaq/cpml-5.0.0/libcpml_ev6.a' ./configure --prefix=/usr/local/mysql --disable-shared --with-extra-charsets=complex --enable-thread-safe-client make if [ $? = 0 ] then Loading
Docs/bk.txt 0 → 100644 +64 −0 Original line number Diff line number Diff line Mail by sasha, should be rewritten as a HOWTO sometimes ----------- I have set up a repository with BitKeeper on work. There are still some things about it that I would like to learn, but I have gotten far enough with it to replace CVS functionality were are currently using, so let's just go ahead and get started on it. Please follow the instructions below (make sure to save the message for future reference): a) http://www.bitmover.com/download user: beta password: get bitkeeper get the version appropriate for your platform - download it to a temp directory, chmod +x and then run it. You will have to tell it which directory to install, for consistency, let's use /usr/local/bin b) we will take advantage of bk capablity of working with master/slave repositories. The master will be on work.mysql.com, the slaves will be our individual machines. The master repository has already been set up on work, so you will need just to set up a slave repository on your machine: mkdir bk cd bk bk clone yourusername@work:/home/bk/mysql mysql cd mysql bk -r edit Now you have the entire source tree in the current directory. Let's compile it: BUILD/compile-pentium-debug After you edit a file, you need to check it in using bk citool or bk ci filename. Note that ci is different than commit - you ci a file, but you commit a change set. This is a very nice concept - instead of thinking of each individual file as CVS does, bk groups the changes you are making and allows you to document what you actually did between the commits as a whole, rather than just commenting on every file. When you commit, bk will ask you to comment on the change set. Commit is done just to your local repository. To make your changes global, you will need to run bk push. Be careful with that - it is a good idea to run bk push -l -n first too see what you are just about to push to the master repository. When somebody does a push, you will be getting a email ( I will set this up to day). You will then need to execute bk pull to update your sources. If there are any conflicts, bk will force you to resolve them by asking you questions on what to do with each conflict. To learn more about bk, use bk helptool - I will be doing this a lot in the next couple of days :-) If you find bugs or have questions/feature suggestions/comments for developers, feel free to e-mail dev@bitmover.com . Their developers, and especially the president of the company Larry McCoy really like MySQL and are very anxious to help us. Make sure it is obvious that you work for MySQL, of course. And, of course, do not bug them with little things that you can figure out on your own or with my help - they were nice to offer us support, but we should not abuse it. If you are working on 3.23 MySQL source, please make sure to convert to bk ASAP before you do any further developement - otherwise, things will get exponentially worse as the code mass increases. I will work on mysql-4.0 next and try to set it up so that when we update 3.23 source tree, the update makes it to mysql-4.0.
Docs/manual.texi +90 −60 Original line number Diff line number Diff line Loading @@ -253,7 +253,7 @@ Windows notes * NT start:: Starting @strong{MySQL} on NT / Win2000 * Windows running:: Running @strong{MySQL} on Windows * Windows and SSH:: Connecting to a remote @strong{MySQL} from Windows with SSH * Windows symbolic links:: Splitting data across different disks under Windows * Windows symbolic links:: Splitting data across different disks under Win32 * Windows compiling:: Compiling MySQL clients on Windows. * Windows vs Unix:: @strong{MySQL}-Windows compared to Unix @strong{MySQL} Loading Loading @@ -653,6 +653,7 @@ Solving some common problems with MySQL * Log Replication:: Database replication with update log * Backup:: Database backups * Update log:: The update log * Slow query log:: * Multiple servers:: Running multiple @strong{MySQL} servers on the same machine MySQL client tools and APIs Loading Loading @@ -753,6 +754,7 @@ How MySQL compares to @code{mSQL} MySQL internals * MySQL threads:: MySQL threads * MySQL full-text search:: MySQL full-text search MySQL change history Loading Loading @@ -8368,13 +8370,17 @@ Client error messages in given language. May be given as a full path. @item -l, --log[=file] Log connections and queries to file @item --log-isam[=file] Log all ISAM/MyISAM changes to file (only used when debugging ISAM/MyISAM). @item --log-slow-queries[=file] Log all queries that has taken more than @code{long_query_time} to execute to file. @xref{Slow query log}. @item --log-update[=file] Log updates to @code{file.#} where @code{#} is a unique number if not given. @xref{Update log}. @item --log-isam[=file] Log all isam changes to file. @item --log-long-format Log some extra information to update log. Loading Loading @@ -8692,6 +8698,7 @@ The following lists tell what you have to watch out for when upgrading to 3.23: (-g) by default. This option can be disabled with --enable-named-commands (-G). This may cause incompatibility problems in some cases, for example in SQL scripts that use named commands without a semicolon, etc. ! Long format commands still work from the first line. @item The default return type of @code{IF} will now depend on both arguments and not only the first argument. @item @code{AUTO_INCREMENT} will not work with negative numbers. Loading Loading @@ -16872,7 +16879,7 @@ RENAME TABLE current_database.table_name TO other_database.table_name; @end example When you execute @code{RENAME}, you can't have any locked tables or active transactions. You must also have the @code{ALTER TABLE} active transactions. You must also have the @code{ALTER} and @code{DROP} privilege on the original table and @code{CREATE} and @code{INSERT} privilege on the new table. Loading Loading @@ -18543,7 +18550,7 @@ have.. @item @code{Opened_tables} @tab Number of tables that have been opened. @item @code{Questions} @tab Number of queries sent to the server. @item @code{Slow_launch_threads} @tab Number of threads that has taken more than @code{slow_launch_time} to connect. @item @code{Slow_queries} @tab Number of queries that has taken more than @code{long_query_time} @item @code{Slow_queries} @tab Number of queries that has taken more than @code{long_query_time}. @xref{Slow query log}. @item @code{Threads_cached} @tab Number of threads in the thread cache. @item @code{Threads_connected} @tab Number of currently open connections. @item @code{Threads_running} @tab Number of threads that are not sleeping. Loading Loading @@ -18773,7 +18780,8 @@ Change all table names to lower case on disk. @item @code{long_query_time} If a query takes longer than this (in seconds), the @code{Slow_queries} counter will be incremented. will be incremented. If you are using @code{--log-slow-queries}, the query will be logged to the slow query logfile. @xref{Slow query log}. @item @code{max_allowed_packet} The maximum size of one packet. The message buffer is initialized to Loading Loading @@ -25569,7 +25577,7 @@ Continue even if we get an SQL error. Named commands are disabled. Use \* form only, or use named commands only in the beginning of a line ending with a semicolon (;) Since version 10.9 the client now starts with this option ENABLED by default! Disable with '-G' Disable with '-G'. Long format commands still work from the first line. @item -i, --ignore-space Ignore space after function names. @item -h, --host=... Loading Loading @@ -25736,7 +25744,7 @@ The @code{mysqladmin status} command result has the following columns: @item Uptime @tab Number of seconds the @strong{MySQL} server has been up. @item Threads @tab Number of active threads (clients). @item Questions @tab Number of questions from clients since @code{mysqld} was started. @item Slow queries @tab Queries that have taken more than @code{long_query_time} seconds. @item Slow queries @tab Queries that have taken more than @code{long_query_time} seconds. @xref{Slow query log}. @item Opens @tab How many tables @code{mysqld} has opened. @item Flush tables @tab Number of @code{flush ...}, @code{refresh} and @code{reload} commands. @item Open tables @tab Number of tables that are open now. Loading Loading @@ -27482,8 +27490,9 @@ The above command does the following: @itemize @bullet @item If standard logging (@code{--log}) is used, closes and reopens the log file. (@file{mysql.log} as default). If standard logging (@code{--log}) or slow query logging @code{--log-slow-queries} is used, closes and reopens the log file. (@file{mysql.log} and @file{mysql-slow.log} as default). @item If update logging (@code{--log-update}) is used, closes the update log and opens a new log file with a higher sequence number. Loading Loading @@ -29945,6 +29954,7 @@ Drop or rename @code{old_table} * Log Replication:: Database replication with update log * Backup:: Database backups * Update log:: The update log * Slow query log:: * Multiple servers:: Running multiple @strong{MySQL} servers on the same machine @end menu Loading Loading @@ -30050,7 +30060,7 @@ to be replaced with new ones when a new record duplicates an old record on a unique key value. @cindex Update log @node Update log, Multiple servers, Backup, Common problems @node Update log, Slow query log, Backup, Common problems @section The update log When started with the @code{--log-update[=file_name]} option, Loading Loading @@ -30104,6 +30114,20 @@ This can be useful if you have to revert to backup files after a crash and you want to redo the updates that occurred between the time of the backup and the crash. @cindex Slow query log @node Slow query log, Multiple servers, Update log, Common problems @section The slow query log When started with the @code{--log-slow-queries[=file_name]} option, @code{mysqld} writes a log file containing all SQL commands that took more than @code{long_query_time} to execute. data. If no file name is given, it defaults to the name of the host machine suffixed with @code{-slow.log}. If file name is given, but it doesn't contain a path the file is written in the data directory. The slow query log can be used to find queries that takes a long time to execute and are thus candidates for optimization. @cindex Database replication @cindex Replication, database @cindex Database mirroring Loading @@ -30113,7 +30137,7 @@ another host and you want to replicate the changes that have been made to the master database. @xref{Log Replication}. @cindex Multiple servers @node Multiple servers, , Update log, Common problems @node Multiple servers, , Slow query log, Common problems @section Running multiple MySQL servers on the same machine There are circumstances when you might want to run multiple servers on the same Loading Loading @@ -30163,10 +30187,11 @@ by specifying them at runtime as options to @code{safe_mysqld}: shell> /path/to/safe_mysqld --socket=file_name --port=port_number @end example If you run the new server on the same database directory as another server with logging enabled, you should also specify the name of the log files to @code{safe_mysqld} with @code{--log} and @code{--log-update}. Otherwise, both servers may be trying to write to the same log file. If you run the new server on the same database directory as another server with logging enabled, you should also specify the name of the log files to @code{safe_mysqld} with @code{--log}, @code{--log-update} or @code{--log-slow-queries}. Otherwise, both servers may be trying to write to the same log file. @strong{Warning}: Normally you should never have two servers that update data in the same database! If your OS doesn't support fault-free system Loading Loading @@ -35665,6 +35690,7 @@ though, so 3.23 is not released as a stable version yet. (-g) by default. This option can be disabled with --enable-named-commands (-G). This may cause incompatibility problems in some cases, for example in SQL scripts that use named commands without a semicolon, etc. ! Long format commands still work from the first line. @item Fixed a problem when using many pending @code{DROP TABLE} statement at the same time. Loading Loading @@ -40362,15 +40388,19 @@ mysqld are using indexes properly. @xref{EXPLAIN, , @code{EXPLAIN}}. You should also test complicated queries that didn't complete within the @code{mysql} command line tool. If you find the text @code{mysqld restarted} in the error log file (normally named @file{hostname.err}) you have probably found a query that causes @code{mysqld} to fail. If this happens you should check all your tables with @code{myisamchk} (@pxref{Maintenance}), and test the queries in the @strong{MySQL} log files to see if one doesn't work. If you find such a query, try first upgrading to the newest @strong{MySQL} version. If this doesn't help and you can't find anything in the @code{mysql} mail archive, you should report the bug to @email{mysql@@lists.mysql.com}. Links to mail archives are available online at the @uref{http://www.mysql.com/documentation/, @strong{MySQL} You can find the queries that takes a long time to run by starting @code{mysqld} with @code{--log-slow-queries}. @xref{Slow query log}. If you find the text @code{mysqld restarted} in the error log file (normally named @file{hostname.err}) you have probably found a query that causes @code{mysqld} to fail. If this happens you should check all your tables with @code{myisamchk} (@pxref{Maintenance}), and test the queries in the @strong{MySQL} log files to see if one doesn't work. If you find such a query, try first upgrading to the newest @strong{MySQL} version. If this doesn't help and you can't find anything in the @code{mysql} mail archive, you should report the bug to @email{mysql@@lists.mysql.com}. Links to mail archives are available online at the @uref{http://www.mysql.com/documentation/, @strong{MySQL} documentation page}. If you get corrupted tables or if @code{mysqld} always fails after some
Makefile.am +3 −1 Original line number Diff line number Diff line Loading @@ -26,7 +26,7 @@ SUBDIRS = include @docs_dirs@ @readline_dir@ @sql_client_dirs@ \ @bench_dirs@ support-files # Relink after clean CLEANFILES = linked_client_sources linked_server_sources CLEANFILES = linked_client_sources linked_server_sources linked_libmysql_sources linked_libmysql_r_sources # This is just so that the linking is done early. config.h: linked_client_sources linked_server_sources Loading @@ -36,9 +36,11 @@ linked_client_sources: @linked_client_targets@ linked_libmysql_sources: cd libmysql; $(MAKE) link_sources echo timestamp > linked_libmysql_sources linked_libmysql_r_sources: linked_libmysql_sources cd libmysql_r; $(MAKE) link_sources echo timestamp > linked_libmysql_r_sources #avoid recursive make calls in sql directory linked_server_sources: Loading
client/mysql.cc +8 −7 Original line number Diff line number Diff line Loading @@ -402,7 +402,7 @@ CHANGEABLE_VAR changeable_vars[] = { static void usage(int version) { printf("%s Ver 10.10 Distrib %s, for %s (%s)\n", printf("%s Ver 10.11 Distrib %s, for %s (%s)\n", my_progname, MYSQL_SERVER_VERSION, SYSTEM_TYPE, MACHINE_TYPE); if (version) return; Loading Loading @@ -435,9 +435,10 @@ static void usage(int version) -g, --no-named-commands\n\ Named commands are disabled. Use \\* form only, or\n\ use named commands only in the beginning of a line\n\ ending with a semicolon (;)\n\ Since version 10.9 the client now starts with this\n\ option ENABLED by default! Disable with '-G'\n\ ending with a semicolon (;) Since version 10.9 the\n\ client now starts with this option ENABLED by\n\ default! Disable with '-G'. Long format commands\n\ still work from the first line.\n\ -i, --ignore-space Ignore space after function names.\n\ -h, --host=... Connect to host.\n\ -H, --html Produce HTML output.\n\ Loading Loading @@ -690,12 +691,12 @@ static int read_lines(bool execute_commands) if (!in_string && (line[0] == '#' || (line[0] == '-' && line[1] == '-') || line[0] == 0)) continue; // Skipp comment lines continue; // Skip comment lines /* Check if line is a mysql command line */ /* (We want to allow help, print and clear anywhere at line start */ if (execute_commands && !no_named_cmds && !in_string && (com=find_command(line,0))) if (execute_commands && (!no_named_cmds || glob_buffer.is_empty()) && !in_string && (com=find_command(line,0))) { if ((*com->func)(&glob_buffer,line) > 0) break; Loading