summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Docs/manual.texi167
-rw-r--r--configure.in2
-rw-r--r--myisam/mi_rprev.c2
-rw-r--r--mysys/mf_format.c2
-rw-r--r--sql/handler.cc2
5 files changed, 154 insertions, 21 deletions
diff --git a/Docs/manual.texi b/Docs/manual.texi
index 33e046fba53..8decd49b4c5 100644
--- a/Docs/manual.texi
+++ b/Docs/manual.texi
@@ -156,6 +156,7 @@ version see the relevant distribution.
General Information About MySQL
* What-is:: What is @strong{MySQL}?
+* What is MySQL AB::
* Manual-info:: About this manual
* History:: History of @strong{MySQL}
* MySQL-Books:: Books about MySQL
@@ -574,7 +575,7 @@ Replication in MySQL
* Replication Options:: Replication Options in my.cnf
* Replication SQL:: SQL Commands related to replication
* Replication FAQ:: Frequently Asked Questions about replication
-* Troubleshooting Replication:: Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication.
+* Troubleshooting Replication:: Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication.
Getting Maximum Performance from MySQL
@@ -1046,6 +1047,7 @@ Debugging a MySQL server
@menu
* What-is:: What is @strong{MySQL}?
+* What is MySQL AB::
* Manual-info:: About this manual
* History:: History of @strong{MySQL}
* MySQL-Books:: Books about MySQL
@@ -1142,9 +1144,14 @@ see @ref{General-SQL}. For books that focus more specifically on
@cindex MySQL, defined
@cindex MySQL, introduction
-@node What-is, Manual-info, Introduction, Introduction
+@node What-is, What is MySQL AB, Introduction, Introduction
@section What Is MySQL
+@strong{MySQL}, the most popular Open Source SQL database, is provided
+by @strong{MySQL AB}. @strong{MySQL AB} is a commercial company that
+builds is business providing services around the @code{MySQL} database.
+@xref{What is MySQL AB}.
+
@table @asis
@item @strong{MySQL} is a database management system.
@@ -1207,6 +1214,10 @@ a client/server system that consists of a multi-threaded SQL server
that supports different backends, several different client programs and
libraries, administrative tools, and a programming interface.
+We also provide @strong{MySQL} as a multi-threaded library which you can
+link into your application to get a smaller, faster, easier to manage
+product.
+
@item @strong{MySQL} has a lot of contributed software available.
It is very likely that you will find that your favorite
@@ -1220,9 +1231,75 @@ application/language already supports @strong{MySQL}.
The official way to pronounce @strong{MySQL} is ``My Ess Que Ell'' (not
MY-SEQUEL). But we try to avoid correcting people who say MY-SEQUEL.
+@cindex MySQL AB, defined
+@node What is MySQL AB, Manual-info, What-is, Introduction
+@section What Is MySQL AB
+
+@strong{MySQL AB} is the Swedish company owned and run by the @strong{MySQL}
+founders and main developers. We are dedicated to developing
+@strong{MySQL} and spreading our database to new users. @strong{MySQL AB}
+owns the copyright to the @strong{MySQL} server source code and the
+@strong{MySQL} trademark. A significant amount of revenues from our
+services goes to developing @strong{MySQL}. @xref{What-is}.
+
+@strong{MySQL AB} has been profitable providing MySQL AB from the start.
+We don't get any outside funding, but have earned all our money ourselves.
+
+We are searching after partners that would like to support our
+development of @strong{MySQL} so that we could accelerate the
+development pace. If you are interested in doing this, you can email
+@email{partner@@mysql.com} about this!
+@strong{MYSQL AB} has currently 20+ people on it's payroll and is
+growing rapidly. @uref{http://www.mysql.com/development/team.html}.
-@strong{MySQL} core values
+Our main streams of income are
+
+@itemize @bullet
+@item
+Commercial high quality support for @strong{MySQL} provided by
+@strong{MySQL} developers. If you are interested in getting support,
+please visit @uref{https://order.mysql.com/} to view our support options
+or to order support.
+@item
+Consulting services. We have developers/consults in 12 countries and
+partners in many other countries that can help you with almost any
+@strong{MySQL} related issues. If you need consulting services, please
+email a good description of your needs to @email{info@@mysql.com}! If we
+can't handle this ourselves we can usually find a partner or a developer
+that can help you with your problems.
+@item
+We sell licenses for using @strong{MySQL} as an embedded
+database. @xref{Cost}. If you have a commercial product for which you
+need a fast high quality database but you can't afford to make your
+product Open Source, you can buy the right to use the @strong{MySQL} server
+under a normal commercial copyright. If you are interested in this you can
+buy @strong{MySQL} licenses at @uref{https://order.mysql.com/} or contact
+us at @email{licensing@@mysql.com}.
+@item
+Advertising; @uref{http://www.mysql.com} is a very popular web site with
+more than 10,000,000 page views per months (January 2001). By putting a
+banner on this you are guaranteed to reach a lot of potential customers
+in the Open source, Linux and database community. If you are interested
+in this email @email{advertising@@mysql.com}.
+@item
+We are building a partner program to be able to provide @strong{MySQL}
+services in every country. If you are interested in becomming a partner
+of @strong{MySQL AB} please visit
+@uref{http://ww.mysql.com/information/partners.html} or email
+@email{partner@@mysql.com}.
+@item
+We provide @strong{MySQL} training through our partner programs. For more
+information, please email @email{info@@mysql.com}.
+@item
+The @strong{MySQL} brand has since 1995 been associated with speed,
+reliability and is known to be something you can depend upon. If you are
+interested in using the @strong{MySQL} trademark in your marketing, you
+can email @email{info@@mysql.com} about this.
+@end itemize
+
+The @strong{MySQL} core values shows our dedication to @strong{MySQL} and
+Open Source:
We want @strong{MySQL} to be:
@@ -1258,7 +1335,7 @@ Are a virtual company, networking with others
Work against software patents
@end itemize
-@node Manual-info, History, What-is, Introduction
+@node Manual-info, History, What is MySQL AB, Introduction
@section About This Manual
@menu
@@ -1269,7 +1346,7 @@ This manual is currently available in Texinfo, plain text, Info, HTML,
PostScript, and PDF versions. The primary document is the Texinfo file.
The HTML version is produced automatically using a modified version of
@code{texi2html}. The plain text and Info versions are produced with
- @code{makeinfo}. The Postscript version is produced using @code{texi2dvi}
+@code{makeinfo}. The Postscript version is produced using @code{texi2dvi}
and @code{dvips}. The PDF version is produced with @code{pdftex}.
@cindex manual, available formats
@@ -3639,15 +3716,23 @@ EURO (European Union Euro). One EURO is about 1.17 USD.
@multitable @columnfractions .5 .5
@item @strong{Type of support} @tab @strong{Cost per year}
-@item Basic e-mail support @tab EURO 170
-@item Extended e-mail support @tab EURO 1000
-@item Login support @tab EURO 2000
-@item Extended login support @tab EURO 5000
+@item Basic e-mail support. @xref{Basic email support}. @tab EURO 170
+@item Extended e-mail support @xref{Extended email support}. @tab EURO 1000
+@item Login support @xref{Login support}. @tab EURO 2000
+@item Extended login support @xref{Extended login support}. @tab EURO 5000
@end multitable
-You may upgrade from any
-lower level of support to a higher level of support for the difference
-in price between the two support levels.
+You may upgrade from any lower level of support to a higher level of
+support for the difference in price between the two support levels.
+
+We do also provide telephone support (mostly emergency support but also
+24/7 support). This support option doesn't however have a fixed price
+but is negotiated for case to case. If you are interested in this option
+you can email @email{sales@@mysql.com} and tell us about your needs.
+
+Note that as our sales staff is very busy, it may take some time until
+your request is handled. Our support staff does however always answer
+promptly to support questions!
@cindex payment information
@node Payment information, Contact information, Cost, Cost
@@ -5883,7 +5968,6 @@ shell> ./configure --with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock
Note that the given file must be an absolute pathname!
@cindex socket location
-
@item
If you want to compile statically linked programs (for example, to make a
binary distribution, to get more speed, or to work around problems with some
@@ -5914,6 +5998,43 @@ shell> CC=gcc CXX=gcc ./configure
When you use @code{gcc} as your C++ compiler, it will not attempt to link in
@code{libg++} or @code{libstdc++}.
+Here is some common environment variables to set depending on
+the compiler you are using:
+
+@tindex CXXFLAGS environment variable
+@tindex Environment variable, CXXFLAGS
+@multitable @columnfractions .20 .80
+@item gcc 2.7.2.1 @tab
+CC=gcc CXX=gcc CXXFLAGS="-O6 -felide-constructors"
+@item egcs 1.0.3a @tab
+CC=gcc CXX=gcc CXXFLAGS="-O6 -felide-constructors -fno-exceptions -fno-rtti"
+@item gcc 2.95.2 @tab
+CFLAGS="-O6 -mpentiumpro" CXX=gcc CXXFLAGS="-O6 -mpentiumpro -felide-constructors -fno-exceptions -fno-rtti"
+@item pgcc 2.90.29 or newer @tab
+CFLAGS="-O6 -mpentiumpro -mstack-align-double" CXX=gcc CXXFLAGS="-O6 -mpentiumpro -mstack-align-double -felide-constructors -fno-exceptions -fno-rtti"
+@end multitable
+
+In most cases you can get a resonable optimal @code{MySQL} binary
+picking the options from the above and add the following options to the
+configure line:
+
+@example
+--prefix=/usr/local/mysql --enable-assembler --with-mysqld-ldflags=-all-static
+@end example
+
+The full configure line would in other words be something like the
+following for all recent gcc versions:
+
+@example
+CFLAGS="-O6 -mpentiumpro" CXX=gcc CXXFLAGS="-O6 -mpentiumpro -felide-constructors -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local/mysql --enable-assembler --with-mysqld-ldflags=-all-static
+@end example
+
+The binaries we provide at on the MySQL home site
+@uref{http://www.mysql.com}, are all compiled with full optimization and
+should be ok for most users. @xref{MySQL binaries}. There is some
+things one can tweak to make an even faster binary, but this is only for
+advanced users. @xref{Compile and link options}.
+
If the build fails and produces errors about your compiler or linker not
being able to create the shared library @file{libmysqlclient.so.#} (@samp{#}
is a version number), you can work around this problem by giving the
@@ -5936,7 +6057,6 @@ shell> CXXFLAGS=-DDONT_USE_DEFAULT_FIELDS ./configure
@cindex default values, suppression
@cindex suppression, default values
-
@item
By default, @strong{MySQL} uses the ISO-8859-1 (Latin1) character set. To
change the default set, use the @code{--with-charset} option:
@@ -7747,6 +7867,19 @@ The symptom is that you can't execute any client programs, for example,
@code{mysqladmin}. In this case you need to reconfigure not to use
shared libraries with the @code{--disable-shared} option to configure.
+Some customers have had problems on BSDI 4.0.1 that the @code{mysqld}
+binary after a while can't open tables. This is because some
+library/system related bug causes @code{mysqld} to change current
+directory without asking for this!
+
+The fix is to either upgrade to 3.23.34 or after running @code{configure}
+remove the line @code{#define HAVE_REALPATH} from @code{config.h}
+before running make.
+
+Note that the above means that you can't symbolic link a database directories
+to another database directory or symbolic link a table to another database
+on BSDI! (Making a symbolic link to another disk is ok).
+
@node SCO, SCO Unixware, BSDI, Source install system issues
@subsection SCO Notes
@@ -8780,7 +8913,7 @@ following compilers and options:
@table @asis
@item SunOS 4.1.4 2 sun4c with @code{gcc} 2.7.2.1
-@code{CC=gcc CXX=gcc CXXFLAGS=-O3 ./configure --prefix=/usr/local/mysql --disable-shared --with-extra-charsets=complex}
+@code{CC=gcc CXX=gcc CXXFLAGS="-O3 -felide-constructors" ./configure --prefix=/usr/local/mysql --disable-shared --with-extra-charsets=complex --enable-assembler}
@item SunOS 5.5.1 sun4u with @code{egcs} 1.0.3a
@code{CC=gcc CFLAGS="-O6 -fomit-frame-pointer" CXX=gcc CXXFLAGS="-O6 -fomit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local/mysql --with-low-memory --with-extra-charsets=complex}
@@ -26090,7 +26223,7 @@ tables}.
* Replication Options:: Replication Options in my.cnf
* Replication SQL:: SQL Commands related to replication
* Replication FAQ:: Frequently Asked Questions about replication
-* Troubleshooting Replication:: Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication.
+* Troubleshooting Replication:: Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication. Troubleshooting Replication.
@end menu
@node Replication Intro, Replication Implementation, Replication, Replication
@@ -40454,7 +40587,7 @@ New version of netadmin. See above for details.
Home page for this can be found at: @uref{http://www.artronic.hr}.
@item @uref{http://www.mysql.com/Downloads/Win32/mysqlfront.zip, mysqlfront}
-Home page: @uref{http://my.mysqlfront.de/}.
+Home page: @uref{http://www.mysqlfront.de/}.
Win32-Client for accessing and managing dbs, tables, table-data, indexes,
import-/export-files. (Freeware). By Ansgar Becker.
diff --git a/configure.in b/configure.in
index 4ca04cf11ff..64524fd20d8 100644
--- a/configure.in
+++ b/configure.in
@@ -746,7 +746,7 @@ case $SYSTEM_TYPE in
;;
*bsdi*)
echo "Adding fix for BSDI"
- CFLAGS="$CFLAGS -D__BSD__"
+ CFLAGS="$CFLAGS -D__BSD__ -DHAVE_BROKEN_REALPATH"
AC_DEFINE_UNQUOTED(SOCKOPT_OPTLEN_TYPE, size_t)
;;
*sgi-irix6*)
diff --git a/myisam/mi_rprev.c b/myisam/mi_rprev.c
index 69d18b10287..fff2d2257b6 100644
--- a/myisam/mi_rprev.c
+++ b/myisam/mi_rprev.c
@@ -54,7 +54,7 @@ int mi_rprev(MI_INFO *info, byte *buf, int inx)
if (!error)
{
- while (info->lastpos > info->state->data_file_length)
+ while (info->lastpos >= info->state->data_file_length)
{
/* Skip rows that are inserted by other threads since we got a lock */
if ((error=_mi_search_next(info,share->keyinfo+inx,info->lastkey,
diff --git a/mysys/mf_format.c b/mysys/mf_format.c
index bb784ff08fe..c4425806e01 100644
--- a/mysys/mf_format.c
+++ b/mysys/mf_format.c
@@ -110,7 +110,7 @@ my_string fn_format(my_string to, const char *name, const char *dsk,
(void) strmov(pos,ext); /* Don't convert extension */
}
/* Purify gives a lot of UMR errors when using realpath */
-#if defined(HAVE_REALPATH) && !defined(HAVE_purify)
+#if defined(HAVE_REALPATH) && !defined(HAVE_purify) && !defined(HAVE_BROKEN_REALPATH)
if (flag & 16)
{
struct stat stat_buff;
diff --git a/sql/handler.cc b/sql/handler.cc
index 9023e8e9908..0f73a214934 100644
--- a/sql/handler.cc
+++ b/sql/handler.cc
@@ -112,7 +112,7 @@ handler *get_new_handler(TABLE *table, enum db_type db_type)
return new ha_berkeley(table);
#endif
#ifdef HAVE_INNOBASE_DB
- case DB_TYPE_INNOBASE_DB:
+ case DB_TYPE_INNOBASE:
return new ha_innobase(table);
#endif
case DB_TYPE_HEAP: