mysqld-max, An Extended mysqld Server
mysqld-max is the MySQL server (mysqld) configured with
the following configure options:
| Option | Comment | 
| --with-server-suffix=-max |  Add a suffix to the mysqld version string
 | 
| --with-innodb | Support for InnoDB tables (MySQL 3.23 only) | 
| --with-bdb | Support for Berkeley DB (BDB) tables | 
| CFLAGS=-DUSE_SYMDIR | Symbolic link support for Windows | 
The option for enabling InnoDB support is needed only in MySQL 3.23. In MySQL 4 and up, InnoDB is included by default.
You can find the MySQL-Max binaries at http://www.mysql.com/downloads/mysql-max-4.0.html.
The Windows MySQL binary distributions includes both the
standard mysqld.exe binary and the mysqld-max.exe binary.
http://www.mysql.com/downloads/mysql-4.0.html.
See section 2.1.1  Installing MySQL on Windows.
Note that as BerkeleyDB (BDB) is not available for all platforms,
so some of the Max binaries may not have support for it.
You can check which table types are supported by doing the following
query:
mysql> SHOW VARIABLES LIKE "have_%"; +------------------+----------+ | Variable_name | Value | +------------------+----------+ | have_bdb | NO | | have_crypt | YES | | have_innodb | YES | | have_isam | YES | | have_raid | NO | | have_symlink | DISABLED | | have_openssl | NO | | have_query_cache | YES | +------------------+----------+
The meanings of the values in the second column are:
| Value | Meaning | 
YES  | The option is activated and usable. | 
NO  | MySQL is not compiled with support for this option. | 
DISABLED  |  The xxxx option is disabled because one started mysqld with --skip-xxxx or because one didn't start mysqld with all needed options to enable the option.  In this case the hostname.err file should contain a reason indicating why the option is disabled.
 | 
Note:  To be able to create InnoDB tables in MySQL version 3.23
you must edit
your startup options to include at least the innodb_data_file_path
option. See section 7.5.2  InnoDB in MySQL Version 3.23.
To get better performance for BDB tables, you should add some configuration
options for these, too. See section 7.6.3  BDB startup options.
mysqld_safe automatically tries to start any mysqld binary
with the -max suffix. This makes it very easy to test out
another mysqld binary in an existing installation.  Just
run configure with the options you want and then install the
new mysqld binary as mysqld-max in the same directory
where your old mysqld binary is. See section 4.7.2  mysqld_safe, The Wrapper Around mysqld.
On Linux, the MySQL-Max RPM uses the above mentioned mysqld_safe
feature. (It just installs the mysqld-max executable, so
mysqld_safe automatically uses this executable when
mysqld_safe is restarted.)
The following table shows which table types our MySQL-Max binaries include:
| System |  BDB  |  InnoDB
 | 
| Windows/NT | Y | Y | 
| AIX 4.3 | N | Y | 
| HP-UX 11.0 | N | Y | 
| Linux-Alpha | N | Y | 
| Linux-Intel | Y | Y | 
| Linux-IA-64 | N | Y | 
| Solaris-Intel | N | Y | 
| Solaris-SPARC | Y | Y | 
| SCO OSR5 | Y | Y | 
| UnixWare | Y | Y | 
| Mac OS X | N | Y | 
Note that as of MySQL 4, you do not need a MySQL Max server for InnoDB, because InnoDB is included by default.
| Posted by Yuval Zukerman on Saturday August 24 2002, @11:25am | [Delete] [Edit] | 
After installing version 3.23.52 on Windows 2000, 
the service started using the regular mysqld-nt 
(which lacks Innodb) instead of the mysqld-max-nt 
(which has Innodb). 
If this happened to you too, and you want to get 
mysqld-max-nt to work instead, try these steps 
which got me going:
1. Stop the service using mysqladmin (which is 
located in the mysql\bin directory).
2. In mysqladmin, choose the my.ini tab. Modify the 
my.ini file to include at least the minimal requirement 
for innodb, a line such as:
innodb_data_file_path = ibdata1:100M:autoextend
3. Choose the mysqld file to start to be mysqld-max-
nt.
4. save the file (using the Save Modification button).
5. Open a console window and get into the 
mysql\bin directory.
6. Enter the line: 
mysqld-nt --remove
This will remove the service using the regular mysqld-
nt.
7. Enter the line: 
mysqld-max-nt --install
After I did this I got an error message but it did the 
job.
8. Start the service again. To check whether this 
worked and that Innodb tables are available, start 
the mysql console application and enter:
SHOW VARIABLES LIKE 'have_%';
If you have Innodb | YES you are good to go.