diff options
author | monty@donna.mysql.fi <> | 2001-05-12 09:24:35 +0300 |
---|---|---|
committer | monty@donna.mysql.fi <> | 2001-05-12 09:24:35 +0300 |
commit | a4289cc0c8208098c7cb0602c368237bb53cb1a7 (patch) | |
tree | a30ac4edd45397b82c0763a1df7fd2ad938ae675 | |
parent | 10920d0be1cf7981c2bc2d003af59f3c7944cf1f (diff) | |
download | mariadb-git-a4289cc0c8208098c7cb0602c368237bb53cb1a7.tar.gz |
Added information about using mysql-max
-rw-r--r-- | Docs/manual.texi | 72 | ||||
-rw-r--r-- | sql/mysqld.cc | 26 | ||||
-rw-r--r-- | support-files/my-huge.cnf.sh | 2 | ||||
-rw-r--r-- | support-files/my-large.cnf.sh | 2 | ||||
-rw-r--r-- | support-files/my-medium.cnf.sh | 2 | ||||
-rw-r--r-- | support-files/my-small.cnf.sh | 2 |
6 files changed, 78 insertions, 28 deletions
diff --git a/Docs/manual.texi b/Docs/manual.texi index 2ede3648a9b..b3023a905c7 100644 --- a/Docs/manual.texi +++ b/Docs/manual.texi @@ -6001,9 +6001,15 @@ shell> scripts/mysql_install_db shell> chown -R root /usr/local/mysql shell> chown -R mysql /usr/local/mysql/var shell> chgrp -R mysql /usr/local/mysql +shell> cp support-files/my-medium.cnf /etc/my.cnf shell> /usr/local/mysql/bin/safe_mysqld --user=mysql & @end example +If you want have support for InnoDB tables, you should edit the +@code{/etc/my.cnf} file and remove the @code{#} character before the +parameters that starts with @code{innodb_...}. @xref{Option +files}. @xref{InnoDB start}. + If you start from a source RPM, then do the following: @example @@ -8816,7 +8822,7 @@ This is also described in the @file{README} file that comes with the @subsection Installing MySQL on Windows If you don't have a copy of the @strong{MySQL} distribution, you should -first download one from @uref{http://www.mysql.com/}. +first download one from @uref{http://www.mysql.com/downloads/mysql-3.23.html}. If you plan to connect to @strong{MySQL} from some other program, you will probably also need the @strong{MyODBC} driver. You can find this at the @@ -8843,6 +8849,36 @@ specify all paths with @samp{/} instead of @samp{\}. If you use @samp{\}, you need to specify this twice, as @samp{\} is the escape character in @strong{MySQL}. @xref{Option files}. +Starting from @strong{MySQL} 3.23.38 the windows distribution includes +both the normal and the @strong{MySQL-Max} binaries. The main benefit +of using the normal @code{mysqld.exe} binary is that it's a little +faster and uses less resources. + +Here is a list of the different @strong{MySQL} servers you can use: + +@multitable @columnfractions .25 .75 +@item @code{mysqld} @tab +Compiled with full debugging and automatic memory allocation checking, +symbolic links, BDB and InnoDB tables. +@item @code{mysqld-opt} @tab +Optimized binary with no support for transactional tables. +@item @code{mysqld-nt} @tab +Optimized for a Pentium pro processor. Has support for +named pipes. One can run this version on Win98, but in +this case no named pipes are created and one must +have TCP/IP installed. +@item mysqld-max @tab +Optimized binary with support for symbolic links, BDB and InnoDB tables. +@item mysqld-max-nt @tab +Like mysqld-max, but compiled with support for named pipes. +@end multitable + +All of the above binaries are optimized for the Pentium pro processor but +should work on any Intel processor >= i386. + +NOTE: If you want to use InnoDB tables, you need to specify some startup +options in your my.ini file! @xref{InnoDB start}. + @node Win95 start, NT start, Windows installation, Windows @subsection Starting MySQL on Windows 95 or Windows 98 @@ -8857,15 +8893,6 @@ Winsock 2! You can get the newest Winsock from @uref{http://www.microsoft.com/}. Win98 has the new Winsock 2 library, so the above doesn't apply for Win98. -There are 2 different @strong{MySQL} servers you can use: - -@multitable @columnfractions .25 .75 -@item @code{mysqld} @tab Compiled with full debugging and automatic memory allocation checking -@item @code{mysqld-opt} @tab Optimized for a Pentium processor. -@end multitable - -Both of the above should work on any Intel processor >= i386. - To start the @code{mysqld} server, you should start an MS-DOS window and type: @example @@ -8911,10 +8938,15 @@ should install @strong{MySQL} as a service on NT/Win2000: @example C:\mysql\bin\mysqld-nt --install + +or + +C:\mysql\bin\mysqld-max-nt --install @end example -(You could use the @code{mysqld} or @code{mysqld-opt} servers on NT, -but those cannot be started as a service or use named pipes.) +(You can also use @code{mysqld} binaries that doesn't end with +@code{-nt.exe} on NT, but those cannot be started as a service or use +named pipes.) You can start and stop the @strong{MySQL} service with: @@ -9863,6 +9895,10 @@ reload the grant tables. @cindex server, starting problems @cindex problems, starting the server +If you are going to use tables that support transactions (BDB, InnoDB or +Gemini), you should first create a my.cnf file and set startup options +for the table types you plan to use. @xref{Table types}. + Generally, you start the @code{mysqld} server in one of three ways: @itemize @bullet @@ -23353,6 +23389,9 @@ type it should use for the table. @strong{MySQL} will always create a @code{.frm} file to hold the table and column definitions. Depending on the table type, the index and data will be stored in other files. +Note that to use @code{InnoDB} tables you have to use at least +the @code{innodb_data_file_path} startup option. @xref{InnoDB start}. + The default table type in @strong{MySQL} is @code{MyISAM}. If you are trying to use a table type that is not compiled-in or activated, @strong{MySQL} will instead create a table of type @code{MyISAM}. This @@ -31719,6 +31758,14 @@ the following configure options: @item CFLAGS=-DUSE_SYMDIR @tab Symbolic links support for Windows. @end multitable +You can find the @strong{MySQL}-max binaries at +@uref{http://www.mysql.com/downloads/mysql-max-3.23.html}. + +The windows @strong{MySQL} 3.23 binary distribution includes both the +standard @strong{mysqld.exe} binary and the @code{mysqld-max.exe} binary. +@uref{http://www.mysql.com/downloads/mysql-3.23.html}. +@xref{Windows installation}. + Note that as Berkeley DB and InnoDB are not available for all platforms, some of the @code{Max} binaries may not have support for both of these. You can check which table types are supported by doing the following @@ -31780,6 +31827,7 @@ binaries includes: @item Solaris-sparc @tab Y @tab Y @item SCO OSR5 @tab Y @tab Y @item UnixWare @tab Y @tab Y +@item Windows/NT @tab Y @tab Y @end multitable @cindex tools, safe_mysqld diff --git a/sql/mysqld.cc b/sql/mysqld.cc index 3c64f0573e2..503a45a8da0 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -1127,7 +1127,7 @@ static void start_signal_handler(void) #ifdef HAVE_LINUXTHREADS static sig_handler write_core(int sig); -#if defined (__i386__) || defined(__alpha__) +#if defined (__i386__) || (defined(__alpha__) && defined(__GNUC__)) #define LINUX_STACK_TRACE #endif @@ -1158,11 +1158,13 @@ inline __volatile__ void print_str(const char* name, #ifdef LINUX_STACK_TRACE #define SIGRETURN_FRAME_COUNT 1 -#ifdef __alpha__ -// The only way to backtrace without a symbol table on alpha -// to find stq fp,N(sp), and the first byte -// of the instruction opcode will give us the value of N. From this -// we can find where the old value of fp is stored +#if defined(__alpha__) && defined(__GNUC__) +/* + The only way to backtrace without a symbol table on alpha + is to find stq fp,N(sp), and the first byte + of the instruction opcode will give us the value of N. From this + we can find where the old value of fp is stored +*/ #define MAX_INSTR_IN_FUNC 10000 @@ -1221,7 +1223,7 @@ terribly wrong...\n"); return; } #endif -#ifdef __alpha__ +#if defined(__alpha__) && defined(__GNUC__) __asm __volatile__ ("mov $15,%0" :"=r"(fp) :"r"(fp)); @@ -1231,7 +1233,7 @@ terribly wrong...\n"); -fomit-frame-pointer? Aborting backtrace!\n"); return; } -#endif +#endif /* __alpha__ */ if (!thd) { @@ -1252,7 +1254,7 @@ terribly wrong...\n"); } fprintf(stderr, "Stack range sanity check OK, backtrace follows:\n"); -#ifdef __alpha__ +#if defined(__alpha__) && defined(__GNUC__) fprintf(stderr, "Warning: Alpha stacks are difficult -\ will be taking some wild guesses, stack trace may be incorrect or \ terminate abruptly\n"); @@ -1261,7 +1263,7 @@ terribly wrong...\n"); __asm __volatile__ ("bsr %0, do_next; do_next: " :"=r"(pc) :"r"(pc)); -#endif +#endif /* __alpha__ */ while (fp < stack_bottom) { @@ -1270,7 +1272,7 @@ terribly wrong...\n"); fprintf(stderr, "%p\n", frame_count == SIGRETURN_FRAME_COUNT ? *(fp+17) : *(fp+1)); #endif -#ifdef __alpha__ +#if defined(__alpha__) && defined(__GNUC__) uchar** new_fp = find_prev_fp(pc, fp); if(frame_count == SIGRETURN_FRAME_COUNT - 1) { @@ -1291,7 +1293,7 @@ terribly wrong...\n"); } else { - fprintf(stderr, "Not smart enough to deal with the rest of \ + fprintf(stderr, "Not smart enough to deal with the rest of\ this stack\n"); goto print_glob_vars; } diff --git a/support-files/my-huge.cnf.sh b/support-files/my-huge.cnf.sh index 7917ab9d9f1..103a6c16cfd 100644 --- a/support-files/my-huge.cnf.sh +++ b/support-files/my-huge.cnf.sh @@ -47,10 +47,10 @@ server-id = 1 #set-variable = bdb_max_lock=100000 # Uncomment the following if you are using Innobase tables +#innodb_data_file_path = ibdata1:2000M;ibdata2:2000M #innodb_data_home_dir = @localstatedir@/ #innodb_log_group_home_dir = @localstatedir@/ #innodb_log_arch_dir = @localstatedir@/ -#innodb_data_file_path = ibdata1:25M;ibdata2:37M;ibdata3:100M;ibdata4:300M #set-variable = innodb_mirrored_log_groups=1 #set-variable = innodb_log_files_in_group=3 #set-variable = innodb_log_file_size=5M diff --git a/support-files/my-large.cnf.sh b/support-files/my-large.cnf.sh index d4e28c14019..f314566c5fb 100644 --- a/support-files/my-large.cnf.sh +++ b/support-files/my-large.cnf.sh @@ -43,10 +43,10 @@ server-id = 1 #set-variable = bdb_max_lock=100000 # Uncomment the following if you are using Innobase tables +#innodb_data_file_path = ibdata1:1000M #innodb_data_home_dir = @localstatedir@/ #innodb_log_group_home_dir = @localstatedir@/ #innodb_log_arch_dir = @localstatedir@/ -#innodb_data_file_path = ibdata1:25M;ibdata2:37M;ibdata3:100M;ibdata4:300M #set-variable = innodb_mirrored_log_groups=1 #set-variable = innodb_log_files_in_group=3 #set-variable = innodb_log_file_size=5M diff --git a/support-files/my-medium.cnf.sh b/support-files/my-medium.cnf.sh index d25345502e2..675241b25dd 100644 --- a/support-files/my-medium.cnf.sh +++ b/support-files/my-medium.cnf.sh @@ -45,10 +45,10 @@ server-id = 1 #set-variable = bdb_max_lock=10000 # Uncomment the following if you are using Innobase tables +#innodb_data_file_path = ibdata1:400M #innodb_data_home_dir = @localstatedir@/ #innodb_log_group_home_dir = @localstatedir@/ #innodb_log_arch_dir = @localstatedir@/ -#innodb_data_file_path = ibdata1:25M;ibdata2:37M;ibdata3:100M;ibdata4:300M #set-variable = innodb_mirrored_log_groups=1 #set-variable = innodb_log_files_in_group=3 #set-variable = innodb_log_file_size=5M diff --git a/support-files/my-small.cnf.sh b/support-files/my-small.cnf.sh index 6cafa8281fe..cad0e10e684 100644 --- a/support-files/my-small.cnf.sh +++ b/support-files/my-small.cnf.sh @@ -42,10 +42,10 @@ server-id = 1 #skip-bdb # Uncomment the following if you are using Innobase tables +#innodb_data_file_path = ibdata1:100M #innodb_data_home_dir = @localstatedir@/ #innodb_log_group_home_dir = @localstatedir@/ #innodb_log_arch_dir = @localstatedir@/ -#innodb_data_file_path = ibdata1:25M;ibdata2:37M;ibdata3:100M;ibdata4:300M #set-variable = innodb_mirrored_log_groups=1 #set-variable = innodb_log_files_in_group=3 #set-variable = innodb_log_file_size=5M |