INSTALL-WIN-SOURCE
上传用户:romrleung
上传日期:2022-05-23
资源大小:18897k
文件大小:11k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. 2.8.6 Installing MySQL from Source on Windows
  2. ---------------------------------------------
  3. * Menu:
  4. * windows-vc-plus-plus-build::   Building MySQL Using VC++
  5. * windows-bitkeeper-build::      Creating a Windows Source Package from the Latest Development Source
  6. These instructions describe how to build MySQL binaries from source for
  7. versions 4.1 and above on Windows. Instructions are provided for
  8. building binaries from a standard source distribution or from the
  9. BitKeeper tree that contains the latest development source.
  10. *Note*: The instructions in this document are strictly for users who
  11. want to test MySQL on Windows from the latest source distribution or
  12. from the BitKeeper tree. For production use, MySQL AB does not advise
  13. using a MySQL server built by yourself from source. Normally, it is
  14. best to use precompiled binary distributions of MySQL that are built
  15. specifically for optimal performance on Windows by MySQL AB.
  16. Instructions for installing a binary distributions are available at
  17. *Note windows-installation::.
  18. To build MySQL on Windows from source, you need the following compiler
  19. and resources available on your Windows system:
  20.    * Visual Studio 2003 compiler system (VC++ 7.0).
  21.    * Between 3 and 5 GB disk space.
  22.    * Windows 2000 or higher.
  23. The exact system requirements can be found here:
  24. `http://msdn.microsoft.com/vstudio/productinfo/sysreqs/default.aspx'
  25. You will also need a MySQL source distribution for Windows.  There are
  26. two ways you can get a source distribution for MySQL version 4.1 and
  27. above:
  28.   1. Obtain a source distribution packaged by MySQL AB for the
  29.      particular version of MySQL in which you are interested.
  30.      Prepackaged source distributions are available for released
  31.      versions of MySQL and can be obtained from
  32.      `http://dev.mysql.com/downloads/'.
  33.   2. You can package a source distribution yourself from the latest
  34.      BitKeeper developer source tree. If you plan to do this, you must
  35.      create the package on a Unix system and then transfer it to your
  36.      Windows system. (The reason for this is that some of the
  37.      configuration and build steps require tools that work only on
  38.      Unix.) The BitKeeper approach thus requires:
  39.         * A system running Unix, or a Unix-like system such as Linux.
  40.         * BitKeeper 3.0 installed on that system. See *Note
  41.           installing-source-tree:: for instructions how to download and
  42.           install BitKeeper.
  43. If you are using a Windows source distribution, you can go directly to
  44. *Note windows-vc-plus-plus-build::. To build from the BitKeeper tree,
  45. proceed to *Note windows-bitkeeper-build::.
  46. If you find something not working as expected, or you have suggestions
  47. about ways to improve the current build process on Windows, please send
  48. a message to the `win32' mailing list. See *Note mailing-list::.
  49. File: manual.info,  Node: windows-vc-plus-plus-build,  Next: windows-bitkeeper-build,  Prev: windows-source-build,  Up: windows-source-build
  50. 2.8.6.1 Building MySQL Using VC++
  51. .................................
  52. *Note*: VC++ workspace files for MySQL 4.1 and above are compatible
  53. with Microsoft Visual Studio 2003 editions and tested by MySQL AB staff
  54. before each release.
  55. Follow this procedure to build MySQL:
  56.   1. Create a work directory (for example, `C:workdir').
  57.   2. Unpack the source distribution in the aforementioned directory
  58.      using `WinZip' or other Windows tool that can read `.zip' files.
  59.   3. Start Visual Studio.
  60.   4. In the File menu, select
  61.      Open Workspace
  62.      .
  63.   5. Open the `mysql.dsw' workspace you find in the work directory.
  64.   6. From the `Build' menu, select the Set Active Configuration menu.
  65.   7. Click over the screen selecting
  66.      mysqld - Win32 Debug
  67.      and click OK.
  68.   8. Press F7 to begin the build of the debug server, libraries, and
  69.      some client applications.
  70.   9. Compile the release versions that you want in the same way.
  71.  10. Debug versions of the programs and libraries are placed in the
  72.      `client_debug' and `lib_debug' directories. Release versions of
  73.      the programs and libraries are placed in the `client_release' and
  74.      `lib_release' directories. Note that if you want to build both
  75.      debug and release versions, you can select the
  76.      Build All
  77.      option from the Build menu.
  78.  11. Test the server. The server built using the preceding instructions
  79.      expects that the MySQL base directory and data directory are
  80.      `C:mysql' and `C:mysqldata' by default. If you want to test
  81.      your server using the source tree root directory and its data
  82.      directory as the base directory and data directory, you need to
  83.      tell the server their pathnames.  You can either do this on the
  84.      command line with the -basedir and -datadir options, or place
  85.      appropriate options in an option file (the `my.ini' file in your
  86.      Windows directory or `C:my.cnf'). If you have an existing data
  87.      directory elsewhere that you want to use, you can specify its
  88.      pathname instead.
  89.  12. Start your server from the `client_release' or `client_debug'
  90.      directory, depending on which server you want to use. The general
  91.      server startup instructions are in *Note windows-installation::.
  92.      You will need to adapt the instructions appropriately if you want
  93.      to use a different base directory or data directory.
  94.  13. When the server is running in standalone fashion or as a service
  95.      based on your configuration, try to connect to it from the `mysql'
  96.      interactive command-line utility that exists in your
  97.      `client_release' or `client_debug' directory.
  98. When you are satisfied that the programs you have built are working
  99. correctly, stop the server. Then install MySQL as follows:
  100.   1. Create the directories where you want to install MySQL.  For
  101.      example, to install into `C:mysql', use these commands:
  102.           C:> mkdir C:mysql
  103.           C:> mkdir C:mysqlbin
  104.           C:> mkdir C:mysqldata
  105.           C:> mkdir C:mysqlshare
  106.           C:> mkdir C:mysqlscripts
  107.      If you want to compile other clients and link them to MySQL, you
  108.      should also create several additional directories:
  109.           C:> mkdir C:mysqlinclude
  110.           C:> mkdir C:mysqllib
  111.           C:> mkdir C:mysqllibdebug
  112.           C:> mkdir C:mysqllibopt
  113.      If you want to benchmark MySQL, create this directory:
  114.           C:> mkdir C:mysqlsql-bench
  115.      Benchmarking requires Perl support.
  116.   2. From the `workdir' directory, copy into the `C:mysql' directory
  117.      the following directories:
  118.           C:> cd workdir
  119.           C:workdir> copy client_release*.exe C:mysqlbin
  120.           C:workdir> copy client_debugmysqld.exe C:mysqlbinmysqld-debug.exe
  121.           C:workdir> xcopy scripts*.* C:mysqlscripts /E
  122.           C:workdir> xcopy share*.* C:mysqlshare /E
  123.      If you want to compile other clients and link them to MySQL, you
  124.      should also copy several libraries and header files:
  125.           C:workdir> copy lib_debugmysqlclient.lib C:mysqllibdebug
  126.           C:workdir> copy lib_debuglibmysql.* C:mysqllibdebug
  127.           C:workdir> copy lib_debugzlib.* C:mysqllibdebug
  128.           C:workdir> copy lib_releasemysqlclient.lib C:mysqllibopt
  129.           C:workdir> copy lib_releaselibmysql.* C:mysqllibopt
  130.           C:workdir> copy lib_releasezlib.* C:mysqllibopt
  131.           C:workdir> copy include*.h C:mysqlinclude
  132.           C:workdir> copy libmysqllibmysql.def C:mysqlinclude
  133.      If you want to benchmark MySQL, you should also do this:
  134.           C:workdir> xcopy sql-bench*.* C:mysqlbench /E
  135. Set up and start the server in the same way as for the binary Windows
  136. distribution. See *Note windows-installation::.
  137. File: manual.info,  Node: windows-bitkeeper-build,  Prev: windows-vc-plus-plus-build,  Up: windows-source-build
  138. 2.8.6.2 Creating a Windows Source Package from the Latest Development Source
  139. ............................................................................
  140. To create a Windows source package from the current BitKeeper source
  141. tree, use the following instructions. Please note that this procedure
  142. must be performed on a system running a Unix or Unix-like operating
  143. system. For example, the procedure is known to work well on Linux.
  144.   1. Copy the BitKeeper source tree for MySQL (version 4.1 or above, as
  145.      desired). For more information on how to copy the source tree, see
  146.      the instructions in *Note installing-source-tree::.
  147.   2. Configure and build the distribution so that you have a server
  148.      binary to work with. One way to do this is to run the following
  149.      command in the top-level directory of your source tree:
  150.           shell> ./BUILD/compile-pentium-max
  151.   3. After making sure that the build process completed successfully,
  152.      run the following utility script from top-level directory of your
  153.      source tree:
  154.           shell> ./scripts/make_win_src_distribution
  155.      This script creates a Windows source package to be used on your
  156.      Windows system. You can supply different options to the script
  157.      based on your needs. It accepts the following options:
  158.         * -help
  159.           Display a help message.
  160.         * -debug
  161.           Print information about script operations, do not create
  162.           package.
  163.         * -tmp
  164.           Specify the temporary location.
  165.         * -suffix
  166.           Suffix name for the package.
  167.         * -dirname
  168.           Directory name to copy files (intermediate).
  169.         * -silent
  170.           Do not print verbose list of files processed.
  171.         * -tar
  172.           Create `tar.gz' package instead of `.zip' package.
  173.      By default, `make_win_src_distribution' creates a Zip-format
  174.      archive with the name `mysql-VERSION-win-src.zip', where VERSION
  175.      represents the version of your MySQL source tree.
  176.   4. Copy or upload to your Windows machine the Windows source package
  177.      that you have just created. To compile it, use the instructions in
  178.      *Note windows-vc-plus-plus-build::.
  179. File: manual.info,  Node: windows-client-compiling,  Prev: windows-source-build,  Up: installing-source
  180. 2.8.7 Compiling MySQL Clients on Windows
  181. ----------------------------------------
  182. In your source files, you should include `my_global.h' before `mysql.h':
  183.      #include <my_global.h>
  184.      #include <mysql.h>
  185. `my_global.h' includes any other files needed for Windows compatibility
  186. (such as `windows.h') if you compile your program on Windows.
  187. You can either link your code with the dynamic `libmysql.lib' library,
  188. which is just a wrapper to load in `libmysql.dll' on demand, or link
  189. with the static `mysqlclient.lib' library.
  190. The MySQL client libraries are compiled as threaded libraries, so you
  191. should also compile your code to be multi-threaded.