Added a "Mysql + PHP 5 = Huh?" FAQ which is basically a copy of Rasmus' post

here: http://marc.theaimsgroup.com/?l=php-general&m=105699415814630


git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@133954 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
Philip Olson 2003-07-02 06:51:23 +00:00
parent c043caf704
commit b9de7aa73d

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.18 $ -->
<!-- $Revision: 1.19 $ -->
<chapter id="faq.databases">
<title>Database issues</title>
<titleabbrev>Database issues</titleabbrev>
@ -179,6 +179,55 @@
</answer>
</qandaentry>
<qandaentry id="faq.databases.mysql.php5">
<question>
<para>
PHP 5 no longer bundles <link linkend="ref.mysql">MySQL</link> client
libraries, what does this mean to me? Can I still use MySQL with PHP?
I try to use MySQL and get "function undefined" errors, what gives?
</para>
</question>
<answer>
<para>
Yes. There will always be MySQL support in PHP of one kind or
another. The only change in PHP 5 is that we are no longer bundling
the client library itself. Some reasons in no particular order:
</para>
<para>
1. Most systems these days already have the client library installed.
</para>
<para>
2. Given the above, having multiple versions of the library can get
messy. For example, if you link mod_auth_mysql against one version
and PHP against another, and then enable both in Apache, you get a
nice fat crash. Also, the bundled library didn't always play well
with the installed server version. The most obvious symptom of this
being disagreement over where to find the mysql.socket unix domain
socket file.
</para>
<para>
3. Maintenance was somewhat lax and it was falling further and further
behind the released version.
</para>
<para>
4. Future versions of the library are under the GPL and thus we don't
have an upgrade path since we cannot bundle a GPL'ed library in a
BSD/Apache-style licensed project. A clean break in PHP 5 seemed like
the best option.
</para>
<para>
This won't actually affect that many people. UNIX users, at least the
ones who know what they are doing, tend to always build PHP against
their system's libmyqlclient library simply by doing --with-mysql=/usr
when building PHP. Windows users may enable the extension
<filename>php_mysql.dll</filename> inside &php.ini;. Also, copy
<filename>libmySQL.dll</filename> into the appropriate
<literal>%SYSTEMROOT%</literal> directory, just like you do with every
other bundled DLL from the <filename>dll</filename> directory.
</para>
</answer>
</qandaentry>
<qandaentry id="faq.databases.shared-mysql">
<question>
<para>