Commit 9c3297c9 authored by unknown's avatar unknown

Added information about using mysql-max


sql/mysqld.cc:
  Fixes for Alpha cc compiler
support-files/my-huge.cnf.sh:
  cleanup
support-files/my-large.cnf.sh:
  cleanup
support-files/my-medium.cnf.sh:
  cleanup
support-files/my-small.cnf.sh:
  cleanup
parent 442e091f
...@@ -6001,9 +6001,15 @@ shell> scripts/mysql_install_db ...@@ -6001,9 +6001,15 @@ shell> scripts/mysql_install_db
shell> chown -R root /usr/local/mysql shell> chown -R root /usr/local/mysql
shell> chown -R mysql /usr/local/mysql/var shell> chown -R mysql /usr/local/mysql/var
shell> chgrp -R mysql /usr/local/mysql 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 & shell> /usr/local/mysql/bin/safe_mysqld --user=mysql &
@end example @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: If you start from a source RPM, then do the following:
@example @example
...@@ -8816,7 +8822,7 @@ This is also described in the @file{README} file that comes with the ...@@ -8816,7 +8822,7 @@ This is also described in the @file{README} file that comes with the
@subsection Installing MySQL on Windows @subsection Installing MySQL on Windows
If you don't have a copy of the @strong{MySQL} distribution, you should 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 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 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 ...@@ -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 @samp{\}, you need to specify this twice, as @samp{\} is the escape
character in @strong{MySQL}. @xref{Option files}. 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 @node Win95 start, NT start, Windows installation, Windows
@subsection Starting MySQL on Windows 95 or Windows 98 @subsection Starting MySQL on Windows 95 or Windows 98
...@@ -8857,15 +8893,6 @@ Winsock 2! You can get the newest Winsock from ...@@ -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 @uref{http://www.microsoft.com/}. Win98 has the new Winsock 2 library, so
the above doesn't apply for Win98. 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: To start the @code{mysqld} server, you should start an MS-DOS window and type:
@example @example
...@@ -8911,10 +8938,15 @@ should install @strong{MySQL} as a service on NT/Win2000: ...@@ -8911,10 +8938,15 @@ should install @strong{MySQL} as a service on NT/Win2000:
@example @example
C:\mysql\bin\mysqld-nt --install C:\mysql\bin\mysqld-nt --install
or
C:\mysql\bin\mysqld-max-nt --install
@end example @end example
(You could use the @code{mysqld} or @code{mysqld-opt} servers on NT, (You can also use @code{mysqld} binaries that doesn't end with
but those cannot be started as a service or use named pipes.) @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: You can start and stop the @strong{MySQL} service with:
...@@ -9863,6 +9895,10 @@ reload the grant tables. ...@@ -9863,6 +9895,10 @@ reload the grant tables.
@cindex server, starting problems @cindex server, starting problems
@cindex problems, starting the server @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: Generally, you start the @code{mysqld} server in one of three ways:
@itemize @bullet @itemize @bullet
...@@ -23353,6 +23389,9 @@ type it should use for the table. @strong{MySQL} will always create a ...@@ -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 @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. 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 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, 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 @strong{MySQL} will instead create a table of type @code{MyISAM}. This
...@@ -31719,6 +31758,14 @@ the following configure options: ...@@ -31719,6 +31758,14 @@ the following configure options:
@item CFLAGS=-DUSE_SYMDIR @tab Symbolic links support for Windows. @item CFLAGS=-DUSE_SYMDIR @tab Symbolic links support for Windows.
@end multitable @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, 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. 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 You can check which table types are supported by doing the following
...@@ -31780,6 +31827,7 @@ binaries includes: ...@@ -31780,6 +31827,7 @@ binaries includes:
@item Solaris-sparc @tab Y @tab Y @item Solaris-sparc @tab Y @tab Y
@item SCO OSR5 @tab Y @tab Y @item SCO OSR5 @tab Y @tab Y
@item UnixWare @tab Y @tab Y @item UnixWare @tab Y @tab Y
@item Windows/NT @tab Y @tab Y
@end multitable @end multitable
@cindex tools, safe_mysqld @cindex tools, safe_mysqld
...@@ -1127,7 +1127,7 @@ static void start_signal_handler(void) ...@@ -1127,7 +1127,7 @@ static void start_signal_handler(void)
#ifdef HAVE_LINUXTHREADS #ifdef HAVE_LINUXTHREADS
static sig_handler write_core(int sig); static sig_handler write_core(int sig);
#if defined (__i386__) || defined(__alpha__) #if defined (__i386__) || (defined(__alpha__) && defined(__GNUC__))
#define LINUX_STACK_TRACE #define LINUX_STACK_TRACE
#endif #endif
...@@ -1158,11 +1158,13 @@ inline __volatile__ void print_str(const char* name, ...@@ -1158,11 +1158,13 @@ inline __volatile__ void print_str(const char* name,
#ifdef LINUX_STACK_TRACE #ifdef LINUX_STACK_TRACE
#define SIGRETURN_FRAME_COUNT 1 #define SIGRETURN_FRAME_COUNT 1
#ifdef __alpha__ #if defined(__alpha__) && defined(__GNUC__)
// The only way to backtrace without a symbol table on alpha /*
// to find stq fp,N(sp), and the first byte The only way to backtrace without a symbol table on alpha
// of the instruction opcode will give us the value of N. From this is to find stq fp,N(sp), and the first byte
// we can find where the old value of fp is stored 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 #define MAX_INSTR_IN_FUNC 10000
...@@ -1221,7 +1223,7 @@ terribly wrong...\n"); ...@@ -1221,7 +1223,7 @@ terribly wrong...\n");
return; return;
} }
#endif #endif
#ifdef __alpha__ #if defined(__alpha__) && defined(__GNUC__)
__asm __volatile__ ("mov $15,%0" __asm __volatile__ ("mov $15,%0"
:"=r"(fp) :"=r"(fp)
:"r"(fp)); :"r"(fp));
...@@ -1231,7 +1233,7 @@ terribly wrong...\n"); ...@@ -1231,7 +1233,7 @@ terribly wrong...\n");
-fomit-frame-pointer? Aborting backtrace!\n"); -fomit-frame-pointer? Aborting backtrace!\n");
return; return;
} }
#endif #endif /* __alpha__ */
if (!thd) if (!thd)
{ {
...@@ -1252,7 +1254,7 @@ terribly wrong...\n"); ...@@ -1252,7 +1254,7 @@ terribly wrong...\n");
} }
fprintf(stderr, "Stack range sanity check OK, backtrace follows:\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 -\ fprintf(stderr, "Warning: Alpha stacks are difficult -\
will be taking some wild guesses, stack trace may be incorrect or \ will be taking some wild guesses, stack trace may be incorrect or \
terminate abruptly\n"); terminate abruptly\n");
...@@ -1261,7 +1263,7 @@ terribly wrong...\n"); ...@@ -1261,7 +1263,7 @@ terribly wrong...\n");
__asm __volatile__ ("bsr %0, do_next; do_next: " __asm __volatile__ ("bsr %0, do_next; do_next: "
:"=r"(pc) :"=r"(pc)
:"r"(pc)); :"r"(pc));
#endif #endif /* __alpha__ */
while (fp < stack_bottom) while (fp < stack_bottom)
{ {
...@@ -1270,7 +1272,7 @@ terribly wrong...\n"); ...@@ -1270,7 +1272,7 @@ terribly wrong...\n");
fprintf(stderr, "%p\n", frame_count == SIGRETURN_FRAME_COUNT ? fprintf(stderr, "%p\n", frame_count == SIGRETURN_FRAME_COUNT ?
*(fp+17) : *(fp+1)); *(fp+17) : *(fp+1));
#endif #endif
#ifdef __alpha__ #if defined(__alpha__) && defined(__GNUC__)
uchar** new_fp = find_prev_fp(pc, fp); uchar** new_fp = find_prev_fp(pc, fp);
if(frame_count == SIGRETURN_FRAME_COUNT - 1) if(frame_count == SIGRETURN_FRAME_COUNT - 1)
{ {
...@@ -1291,7 +1293,7 @@ terribly wrong...\n"); ...@@ -1291,7 +1293,7 @@ terribly wrong...\n");
} }
else 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"); this stack\n");
goto print_glob_vars; goto print_glob_vars;
} }
......
...@@ -47,10 +47,10 @@ server-id = 1 ...@@ -47,10 +47,10 @@ server-id = 1
#set-variable = bdb_max_lock=100000 #set-variable = bdb_max_lock=100000
# Uncomment the following if you are using Innobase tables # Uncomment the following if you are using Innobase tables
#innodb_data_file_path = ibdata1:2000M;ibdata2:2000M
#innodb_data_home_dir = @localstatedir@/ #innodb_data_home_dir = @localstatedir@/
#innodb_log_group_home_dir = @localstatedir@/ #innodb_log_group_home_dir = @localstatedir@/
#innodb_log_arch_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_mirrored_log_groups=1
#set-variable = innodb_log_files_in_group=3 #set-variable = innodb_log_files_in_group=3
#set-variable = innodb_log_file_size=5M #set-variable = innodb_log_file_size=5M
......
...@@ -43,10 +43,10 @@ server-id = 1 ...@@ -43,10 +43,10 @@ server-id = 1
#set-variable = bdb_max_lock=100000 #set-variable = bdb_max_lock=100000
# Uncomment the following if you are using Innobase tables # Uncomment the following if you are using Innobase tables
#innodb_data_file_path = ibdata1:1000M
#innodb_data_home_dir = @localstatedir@/ #innodb_data_home_dir = @localstatedir@/
#innodb_log_group_home_dir = @localstatedir@/ #innodb_log_group_home_dir = @localstatedir@/
#innodb_log_arch_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_mirrored_log_groups=1
#set-variable = innodb_log_files_in_group=3 #set-variable = innodb_log_files_in_group=3
#set-variable = innodb_log_file_size=5M #set-variable = innodb_log_file_size=5M
......
...@@ -45,10 +45,10 @@ server-id = 1 ...@@ -45,10 +45,10 @@ server-id = 1
#set-variable = bdb_max_lock=10000 #set-variable = bdb_max_lock=10000
# Uncomment the following if you are using Innobase tables # Uncomment the following if you are using Innobase tables
#innodb_data_file_path = ibdata1:400M
#innodb_data_home_dir = @localstatedir@/ #innodb_data_home_dir = @localstatedir@/
#innodb_log_group_home_dir = @localstatedir@/ #innodb_log_group_home_dir = @localstatedir@/
#innodb_log_arch_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_mirrored_log_groups=1
#set-variable = innodb_log_files_in_group=3 #set-variable = innodb_log_files_in_group=3
#set-variable = innodb_log_file_size=5M #set-variable = innodb_log_file_size=5M
......
...@@ -42,10 +42,10 @@ server-id = 1 ...@@ -42,10 +42,10 @@ server-id = 1
#skip-bdb #skip-bdb
# Uncomment the following if you are using Innobase tables # Uncomment the following if you are using Innobase tables
#innodb_data_file_path = ibdata1:100M
#innodb_data_home_dir = @localstatedir@/ #innodb_data_home_dir = @localstatedir@/
#innodb_log_group_home_dir = @localstatedir@/ #innodb_log_group_home_dir = @localstatedir@/
#innodb_log_arch_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_mirrored_log_groups=1
#set-variable = innodb_log_files_in_group=3 #set-variable = innodb_log_files_in_group=3
#set-variable = innodb_log_file_size=5M #set-variable = innodb_log_file_size=5M
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment