mysql-logo.gif (3082 bytes)MySQLÖÐÎIJο¼ÊÖ²á

ÒëÕߣºêÌ×Ó (clyan@sohu.com£©      Ö÷Ò³£ºhttp://linuxdb.yeah.net


µÚÒ»ÕÂ, ǰһÕÂ, ÏÂÒ»ÕÂ, ×îºóÒ»Õ£¬Ä¿Â¼.


4 °²×°MySQL

±¾ÕÂÃèÊöÔõÑù»ñµÃ²¢°²×°MySQL£º

4.1 ÔõÑù»ñµÃMySQL

¼ì²éMySQLÖ÷Ò³»ñµÃµ±Ç°°æ±¾µÄÐÅÏ¢ºÍÏÂÔØÖ¸Áî¡£

È»¶ø£¬TcXµÄÒòÌØÍøÁ´½Ó²»ÊǺܿìµÄ£»ÎÒÃǸüÏ£ÍûÈÃÄã´ÓÏÂÁоµÏóÕ¾µãÖ®Ò»½øÐÐÕæÕýµÄÏÂÔØ¡£

ÇëÏòwebmaster@mysql.com±¨¸æ²»´æÔڵĻò¹ýʱµÄ¾µÏñÕ¾µã¡£

Å·ÖÞ£º

±±ÃÀÖÞ£º

ÄÏÃÀÖÞ£º

ÑÇÖÞ£º

°ÄÖÞ£º

·ÇÖÞ£º

4.2 MySQL Ö§³ÖµÄ²Ù×÷ϵͳ

ÎÒÃÇʹÓà GNU Autoconf£¬Òò´Ë½«MySQLÒÆÖ²µ½ËùÓÐʹÓà Posix Ï̺߳ÍÒ»¸ö C++ ±àÒëÆ÷µÄÏÖ´úϵͳÊÇ¿ÉÄܵġ£(½ö½öΪÁ˱àÒë¿Í»§´úÂ룬ֻÐèÒªÒ»¸ö C++ ±àÒëÆ÷¶ø²»ÊÇÏß³Ì)¡£ÎÒÃÇÖ÷ÒªÔÚSun Solaris(°æ±¾ 2.5 & 2.6)ÉÏʹÓò¢¿ª·¢Èí¼þ±¾Éí£¬¶øRedHat Linux 5.0 ¾ÓÆä´Î¡£

MySQLÒѾ­±»±¨¸æÔÚÏÂÁвÙ×÷ϵͳ/Ḭ̈߳üµÄ×éºÏÉϳɹ¦µØ±àÒë¡£×¢Ò⣬¶ÔºÜ¶à²Ù×÷ϵͳ£¬Ô­ÉúµÄÏß³ÌÖ§³Ö½ö¹¤×÷ÓÚ×îеİ汾¡£

4.3 ʹÓÃMySQLÄĸö°æ±¾

Ê×ÏÈÒª×÷³ö¾ö²ß£¬ÄãÊÇ·ñÏëҪʹÓÃ×îеĿª·¢°æ±¾»ò×îÖÕµÄÎȶ¨°æ±¾£º

Òª×öµÄµÚ¶þÏî¾ö²ßÊÇÄãÊÇ·ñÏëҪʹÓÃÔ´´úÂë·Ö·¢»ò¶þ½øÖÆ·Ö·¢£º

MySQLµÄÃüÃû»úÖÆÊ¹ÓÃÓÉ3¸öÊý×ÖºÍÒ»¸öºó׺×é³ÉµÄ°æ±¾ºÅ¡£ÀýÈ磬һ¸öÏñmysql-3.21.17-betaµÄ°æ±¾ºÅÕâÑù½âÊÍ£º

MySQLËùÓа汾¶¼¾­¹ýÎÒÃǵıê×¼²âÊԺͻù×¼²âÊÔÔËÐУ¬ÒÔ±£Ö¤ËûÃÇ¿ÉÏ൱°²È«µØÊ¹Óá£ÒòΪ±ê×¼²âÊÔ²»¶ÏÀ©³äÒÔ¼ì²âÒÔǰ·¢ÏֵĴíÎ󣬲âÊÔÌ×¼þÒ»Ö±ÔڸĽøÖ®ÖС£

×¢Ò⣬ËùÓа汾¶¼ÖÁÉÙÒѾ­ÓÃÏÂÁÐÌ×¼þ½øÐÐÁ˲âÊÔ£º

Ò»¸öÄÚ²¿²âÊÔÌ×¼þ
ÕâÊÇÒ»¸ö¿Í»§Éú²úϵͳµÄÒ»²¿·Ö¡£Ëü¿ÉÄÜÓкܶ༸°Ù¸öÕ××Ö½ÚÊý¾ÝµÄÊý¾Ý¿â±í¡£
MySQL»ù×¼²âÊÔÌ×¼þ
ËüÔËÐÐÒ»¶¨·¶Î§µÄ³£Óòéѯ¡£ËüÒ²ÊÇÒ»¸ö²âÊÔ£¬¼ì²â×îеÄÓÅ»¯´¦ÀíÊÇ·ñÕæµÄʹ´úÂë¸ü¿ì¡£¼û10.8 ʹÓÃÄã×Ô¼ºµÄ»ù×¼²âÊÔ¡£
crash-me²âÊÔ
Õâ³¢ÊÔ¾ö¶¨Êý¾Ý¿âÖ§³Öʲô¹¦ÄܺÍËüµÄÄÜÁ¦ÓëÏÞÖÆÊÇʲô¡£¼û10.8 ʹÓÃÄãµÄ×Ô¼º»ù×¼²âÊÔ¡£

ÆäËû²âÊÔÊÇÔÚÄÚ²¿µÄÉú²ú»·¾³ÖÐʹÓÃ×îÐÂMySQL°æ±¾£¬ÖÁÉÙÔÚһ̨»úÆ÷ÉÏ¡£ÎÒÃÇÓг¬¹ý100GBµÄÊý¾Ý¿ÉÓÃʹÓá£

4.4 ÔõÑùºÍºÎʱ·¢²¼¸üа汾

ÔÚTcX£¬MySQL½øÕ¹µÄÏ൱¿ì£¬²¢ÇÒÎÒÃÇÏëÒªÓëÆäËüMySQLÓû§·ÖÏíËü¡£µ±ÎÒÃÇÓÐÒ»¸ö¿´À´ÆäËüÈËËÆºõÐèÒªµÄ·Ç³£ÓÐÓõŦÄÜʱ£¬ÎÒÃǾÍÊÔ×ÅÖÆ×÷Ò»¸ö·¢Ðа汾¡£

ÎÒÃÇÒ²³¢ÊÔ°ïÖúÄÇЩÐèÒªºÜÈÝÒ×ʵÏֵŦÄܵÄÓû§£¬ÎÒÃÇÒ²¹Ø×¢ÎÒÃÇÊÚȨµÄÓû§ÏëҪʲô£¬ÎÒÃǸüÌØ±ð¹Ø×¢ÎÒÃǵÄÀ©Õ¹µç×ÓÓʼþÖ§³ÖµÄ¿Í»§ÏëҪʲô£¬²¢ÇÒ¾¡Á¦°ïÖúËûÃÇ¡£

ûÓÐÈËÒ»¶¨ÒªÏÂÔØÒ»¸öа汾£¬ÐÂÎÅС½ÚÖн«¸æËßÄãа汾ÊÇ·ñÓÐһЩÄãȷʵÏëÒªµÄ¶«Î÷¡£¼ûD MySQL ±äǨµÄÀúÊ·¼Ç¼¡£

µ±¸üÐÂMySQLʱ£¬ÎÒÃÇʹÓÃÏÂÁз½Õ룺

µ±Ç°µÄÎȶ¨°æ±¾ÊÇ3.22£»ÎÒÃÇÒѾ­×ªÒƵ½3.23µÄ»ý¼«¿ª·¢ÖС£ÔÚÎȶ¨°æ±¾ÖУ¬´íÎóÈÔ½«±»ÐÞ¸´¡£ÎÒÃDz»ÏàÐÅÒ»¸öÍêÈ«¶³½á£¬ÒòΪÕâÒ²ÁôϵĴíÎóÐÞ¸´ºÍ¡°±ØÐë×ö¡±µÄÊÂÇé¡£¡°Ä³Ö̶ֳȵͳ½á¡±Òâζ×ÅÎÒÃÇ¿ÉÒÔÔö¼ÓС¶«Î÷£¬Ëü¡°½«¼¸ºõ¿Ï¶¨²»Ó°ÏìÒѾ­Äܹ¤×÷µÄÈκζ«Î÷¡±¡£

4.5 °²×°²¼¾Ö

Õâ½ÚÃèÊö°²×°¶þ½øÖÆ´úÂëºÍÔ´´úÂë·Ö·¢Ê±´´½¨µÄȱʡĿ¼²¼¾Ö¡£

¶þ½øÖÆ·Ö·¢Í¨¹ýÔÚÄãÑ¡ÔñµÄ°²×°µØµã(µäÐ͵ġ°/usr/local/mysql¡±)½âѹËõÀ´°²×°£¬²¢ÇÒÔڸô¦´´½¨ÏÂÁÐĿ¼£º

Ŀ¼ Ŀ¼µÄÄÚÈÝ
¡°bin¡± ¿Í»§³ÌÐòºÍmysqld·þÎñÆ÷
¡°data¡± ÈÕÖ¾Îļþ, Êý¾Ý¿â
¡°include¡± °üº¬(Í·)Îļþ
¡°lib¡± ¿âÎļþ
¡°scripts¡± mysql_install_db
¡°share/mysql ¡± ´íÎóÏûÏ¢Îļþ
¡°sql-bench¡± »ù×¼³ÌÐò

Ô´´úÂë·Ö·¢ÔÚÄãÅäÖò¢±àÒëºó½øÐа²×°¡£È±Ê¡µØ£¬°²×°²½Ö轫Îļþ°²×°ÔÚ¡°/usr/local¡±ÏµÄÏÂÁÐ×ÓĿ¼£º

Ŀ¼ Ŀ¼µÄÄÚÈÝ
¡°bin¡± ¿Í»§³ÌÐòºÍ½Å±¾
¡°include/mysql¡± °üº¬(Í·)Îļþ
¡°info¡± Info¸ñʽµÄÎĵµ
¡°lib/mysql¡± ¿âÎļþ
¡°libexec¡± mysqld·þÎñÆ÷
¡°share/mysql¡± ´íÎóÏûÏ¢Îļþ
¡°sql-bench¡± »ù×¼³ÌÐòºÍcrash-me²âÊÔ
¡°var¡± Êý¾Ý¿âºÍÈÕÖ¾Îļþ¡£

ÔÚÒ»¸ö°²×°Ä¿Â¼ÄÚ£¬Ô´´úÂë°²×°µÄ²¼¾ÖÔÚÏÂÁз½Ã治ͬÓÚ¶þ½øÖư²×°£º

4.6 °²×°MySQL¶þ½øÖÆ´úÂë·Ö·¢

ÄãÐèÒªÏÂÁй¤¾ß°²×°Ò»¸öMySQL¶þ½øÖÆ·Ö·¢£º

ÔÚLinuxϵÄÁíÒ»¸ö°²×°·½·¨ÊÇʹÓÃRPM(RedHat°ü¹ÜÀíÆ÷)·Ö·¢¡£¼û4.6.1 Linux RPM ×¢ÒâÊÂÏî¡£

Èç¹ûÄãÅöµ½ÎÊÌ⣬ÔÚ°ÑÎÊÌâÓʼĵ½mysql@lists.mysql.comʱ£¬Çë×ÜÊÇʹÓÃmysqlbug£¬¾ÍËãÎÊÌâ²»ÊÇÒ»¸öbug£¬mysqlbugÊÕ¼¯ÏµÍ³ÐÅÏ¢£¬½«ÓÐÖúÓÚÆäËüÈ˽â¾öÄãµÄÎÊÌâ¡£²»Ê¹ÓÃmysqlbug£¬Ä㽫¼õÉٵõ½ÄãÎÊÌâµÄÒ»¸ö½â¾ö·½°¸µÄ¿ÉÄÜÐÔ£¡ÔÚÄã½â°ü·Ö·¢ºó£¬Äã»áÔÚ¡°bin¡±Ä¿Â¼ÏÂÕÒµ½mysqlbug¡£¼û2.3 ÔõÑù±¨¸æ´íÎó»òÎÊÌâ¡£

Äã±ØÐëÖ´ÐÐÒԱ㰲װ²¢Ê¹ÓÃÒ»¸öMySQL¶þ½øÖÆ·Ö·¢µÄ»ù±¾ÃüÁîÊÇ£º

shell> gunzip < mysql-VERSION-OS.tar.gz |tar  xvf - 
shell> ln - s  mysql-VERSION-OS  mysql 
shell> cd mysql 
shell> scripts/mysql_install_db 
shell> bin/safe_mysqld &

Èç¹ûÄã°²×°ÁËDBIºÍMsql-Mysql-modulesPerlÄ£¿é£¬Äã¿ÉÒÔʹÓÃbin/mysql_setpermission½Å±¾Ôö¼ÓÐÂÓû§¡£

ÒÔÏÂÊǸüÏêϸµÄÃèÊö£º

¶ÔÓÚ°²×°¶þ½øÖÆ·Ö·¢£¬×ñÑ­ÒÔϲ½Ö裬Ȼºó¼ÌÐøµ½4.15 °²×°ºóÆÚµÄÉèÖÃÓë²âÊÔ£¬½øÐа²×°ºóÆÚµÄÉèÖúͲâÊÔ£º

  1. Ìôѡһ¸öÄãÏë½â¿ª·Ö·¢°üµÄĿ¼£¬½øÈë¸øÄ¿Â¼¡£ÔÚÏÂÃæµÄÀý×ÓÖУ¬ÎÒÃǽ«·Ö·¢½â°üÔÚ¡°/usr/local¡±Ï²¢ÇÒ´´½¨Ò»¸ö°²×°MySQLµÄ¡°/usr/local/mysql¡±Ä¿Â¼¡££¨Òò´Ë£¬ÏÂÁÐÖ¸Áî¼ÙÉèÄãÓÐȨÏÞÔÚ¡°/usr/local¡±Öд´½¨Îļþ£¬Èç¹û¸ÃĿ¼±»±£»¤£¬ÄãÐèÒªÒÔrootʵʩ°²×°¡£)
  2. ´Ó4.1 ÔõÑù»ñµÃMySQLÖÐÁгöµÄÕ¾µãÖ®Ò»»ñµÃÒ»¸ö·Ö·¢Îļþ¡£MySQL¶þ½øÖÆ·Ö·¢ÒÔѹËõµÄtarÎĵµÌṩ£¬²¢ÇÒÓÐÀàËÆ¡°mysql-VERSION-OS.tar.gz¡±µÄÃû×Ö£¬ÕâÀïVERSIONÊÇÒ»¸öÊý×Ö(ÀýÈ磬3.21.15)£¬ÇÒOS±íÃ÷·Ö·¢ÄÜÔËÐеIJÙ×÷ϵͳÀàÐÍ(ÀýÈ磬pc-linux-gnu-i586)¡£
  3. ½â¿ª·Ö·¢²¢ÇÒ´´½¨Á¢°²×°Ä¿Â¼£º
    shell> gunzip < mysql-VERSION-OS.tar.gz |tar  xvf - 
    shell> ln - s  mysql-VERSION-OS  mysql
    

    µÚÒ»¸öÃüÁî´´½¨Ò»¸öÃûΪ¡°mysql-VERSION-OS¡±µÄĿ¼£¬µÚ¶þ¸öÃüÁîÉú³Éµ½¸ÃĿ¼µÄÒ»¸ö·ûºÅÁ´½Ó¡£ÕâÈÃÄã¸üÈÝÒ׵ذѰ²×°Ä¿Â¼Ö¸¶¨Îª¡°/usr/local/mysql¡±¡£

  4. ½øÈ밲װĿ¼£º
    shell> cd  mysql

    Äã»áÔÚmysqlĿ¼Ï·¢ÏÖ¼¸¸öÎļþºÍ×ÓĿ¼£¬¶Ô°²×°Ä¿µÄ×îÖØÒªµÄÊÇ¡°bin¡±ºÍ¡°scripts¡±×ÓĿ¼¡£

    ¡°bin¡±
    Õâ¸öĿ¼°üº¬¿Í»§³ÌÐòºÍ·þÎñÆ÷£¬ÄãÓ¦¸Ã°ÑÕâ¸öĿ¼µÄÍêÕû·¾¶¼Óµ½ÄãµÄPATH»·¾³±äÁ¿£¬ÒÔ±ãÄãµÄshellÄÜÕýÈ·µÄÕÒµ½MySQL³ÌÐò¡£
    ¡°scripts¡±
    Õâ¸öĿ¼°üº¬mysql_install_db½Å±¾£¬ÓÃÀ´³õʼ»¯·þÎñÆ÷´æÈ¡È¨ÏÞ¡£
  5. Èç¹ûÄãÏëʹÓÃmysqlaccess¶øÔÚij¸ö·Ç±ê×¼µÄµØµãÓÐMySQL·Ö·¢£¬Äã±ØÐë¸Ä±äµØµã£¬ÔÚÄĶùmysqlaccessÆÚÍûÕÒµ½mysql¿Í»§¡£±à¼­¡°bin/mysqlaccess¡±½Å±¾£¬´óÔ¼ÔÚµÚ18ÐУ¬Ñ°ÕÒÀàËÆÏÂÃæµÄÐУº
    $MYSQL = ¡°/usr/local/bin/mysql¡±;¡¡# path to mysql executable

    ¸Ä±ä·¾¶ÒÔ·´Ó³³ömysqlʵ¼Ê´æ´¢ÔÚÄãϵͳÉϵĵص㡣Èç¹ûÄã²»ÕâÑù×ö£¬µ±ÄãÔËÐÐmysqlaccessʱ£¬Ä㽫µÃµ½Ò»¸öbroken pipeµÄ´íÎó¡£

  6. ´´ÔìMySQLÊÚȨ±í(Ö»ÓÐÔÚÄãÒÔǰû°²×°¹ýMySQLÊDZØÒªµÄ)£º
    shell> scripts/mysql_install_db

    ×¢Òâµ±ÄãÔËÐÐʱmysql_install_dbʱ£¬±È°æ±¾3.22.10ÀϵÄMySQL°æ±¾Æô¶¯MySQL·þÎñÆ÷¡£Õâ²»ÔÙÊÇÕæµÄÁË£¡

  7. Èç¹ûÄãÏëÒª°²×°¶ÔPerl DBI/DBD½Ó¿ÚµÄÖ§³Ö£¬¼û4.10 Perl°²×°×¢ÒâÊÂÏî¡£
  8. Èç¹ûÄãϲ»¶ÔÚÒýµ¼»úÆ÷ʱ×Ô¶¯Æô¶¯MySQL£¬Äã¿ÉÒÔ¿½±´support-files/mysql.serverÎļþµ½ÄãϵͳÓÐÆô¶¯ÎļþµÄµØ·½¡£¸ü¶àµÄÐÅÏ¢¿ÉÒÔÔÚsupport-files/mysql.server½Å±¾ÖкÍ4.15.3 ×Ô¶¯Æô¶¯ºÍÍ£Ö¹MySQLÕÒµ½¡£

ÔÚËùÓж«Î÷±»½â°ü²¢ÇÒ°²×°ÒÔºó£¬ÄãÓ¦¸Ã³õʼ»¯²¢ÇÒ²âÊÔÄãµÄ·Ö·¢¡£

Äã¿ÉÒÔÓÃÏÂÁÐÃüÁîÆô¶¯MySQL·þÎñÆ÷£º

shell> bin/safe_mysqld &

¼û4.15 °²×°ºóÆÚµÄÉèÖúͲâÊÔ¡£

4.6.1 Linux RPM ×¢ÒâÊÂÏî

ÔÚLinuxÉϰ²×°MySQLÍÆ¼öµÄ·½·¨ÊÇʹÓÃÒ»¸öRPMÎļþ¡£MySQL RPMĿǰÊÇÔÚÒ»¸ö RedHat 5.2 ϵͳÉϽ¨Á¢µÄ£¬µ«ÊÇÓ¦¸ÃÄܹ¤×÷ÔÚÖ§³ÖrpmÇÒʹÓÃglibcµÄÆäËû Linux °æ±¾ÉÏ¡£

Èç¹ûÒ»¸öRPMÎļþÓÐÎÊÌ⣬ÀýÈçSorry, the host 'xxxx' could not be looked up£¬¼û4.6.3.1 Linux ×¢ÒâÊÂÏî¡£

Äã¿ÉÄÜҪʹÓõÄRPMÎļþÓУº

²é¿´Ò»¸öRPM°üÖеÄËùÓÐÎļþ£º

shell> rpm - qpl  MySQL-VERSION.i386.rpm

ʵʩһ¸ö±ê×¼µÄ×îС°²×°£¬ÔËÐÐÕâ¸öÃüÁ

shell> rpm -i MySQL-VERSION.i386.rpm  MySQL-client-VERSION.i386.rpm

Ö»°²×°¿Í»§°ü£º

shell> rpm -i MySQL-client-VERSION.i386.rpm

RPM½«Êý¾Ý·ÅÔÚ¡°/var/lib/mysql¡±ÀRPMÒ²ÔÚ¡°/etc/rc.d/¡±Àï´´½¨Êʵ±µÄÈë¿ÚÒÔ±ãÔÚÒýµ¼Ê±×Ô¶¯Æô¶¯·þÎñÆ÷¡££¨ÕâÒâζ×ÅÈç¹ûÄãÒÔǰÒѾ­°²×°¹ý£¬ÔÚ¶ÔËü¸Ä±ä֮ǰ£¬Äã¿ÉÒÔ°ÑÄãÒÔǰ°²×°µÄMySQLÆô¶¯Îļþ×ö¸ö¿½±´£¬Òò´ËÄã²»»á¶ªÊ§¸Ä¶¯£©¡£

ÔÚ°²×°ÁËRPMÎļþºó£¬¡°mysqld¡±ÊØ»¤³ÌÐòÓ¦¸ÃÕýÔÚÔËÐУ¬²¢ÇÒÏÖÔÚÄãÓ¦¸Ã¿ÉÒÔ¿ªÊ¼Ê¹ÓÃMySQL¡£¼û4.15 °²×°ºóÆÚµÄÉèÖúͲâÊÔ¡£

Èç¹ûһЩ¶«Î÷³ö´í£¬¿ÉÒÔÔÚ¶þ½øÖƵݲװһ½ÚÀïÕÒµ½¸ü¶àµÄÐÅÏ¢¡£¼û4.6 °²×°MySQL¶þ½øÖÆ´úÂë·Ö·¢¡£

4.6.2 ¹¹Ôì¿Í»§³ÌÐò

Èç¹ûÄã±àÒëÄã×Ô¼ºÐ´µÄ»òÄã´ÓµÚÈý·½»ñµÃµÄMySQL¿Í»§³ÌÐò£¬ËûÃDZØÐëÓÃlinkÃüÁîµÄ-lmysqlclientÑ¡Ïî½øÐÐÁ´½Ó¡£Äã¿ÉÄÜÒ²ÐèÒªÖ¸¶¨Ò»¸ö -L Ñ¡Ï¸æËßÁ´½ÓÆ÷ÔÚÄĶù²éÕÒ¿âÎļþ¡£ÀýÈ磬Èç¹û¿âÎļþ°²×°ÔÚ¡°/usr/local/mysql/lib¡±ÀÔÚÁ´½ÓÃüÁîÉÏʹÓà -L/usr/local/mysql/lib -lmysqlclient¡£

¶ÔʹÓÃMySQLÍ·ÎļþµÄ¿Í»§³ÌÐò£¬µ±Äã±àÒëËûÃÇʱ£¬Äã¿ÉÄÜÐèÒªÖ¸¶¨Ò»¸ö -I Ñ¡Ïî(ÀýÈ磬-I/usr/local/mysql/include)£¬ ʹµÃ±àÒëÆ÷ÄÜÕÒµ½Í·Îļþ¡£

4.6.3 ÏµÍ³ÌØ¶¨µÄÎÊÌâ

ÏÂÒ»½Ú˵Ã÷ÔÚ´ÓÒ»¸ö¶þ½øÖÆ·Ö·¢°²×°MySQLʱ£¬ÒѾ­ÔÚÌØ¶¨µÄϵͳÉϹ۲쵽ÒÑ·¢Éú¹ýһЩÎÊÌâ¡£

4.6.3.1 Linux ×¢ÒâÊÂÏî

MySQLÐèÒªÖÁÉÙLinux 2.0¡£

¶þ½øÖÆ·¢ÐаæÓÃ-staticÁ´½ÓµÄ£¬ÕâÒâζ×ÅÄãÒ»°ã²»±Øµ£ÐÄÄãÓµÓеÄϵͳ¿âÊÇÄĸö°æ±¾¡£ÄãÒ²²»±Ø°²×°LinuxThreads¡£Ò»¸öÓÃ-staticÁ´½ÓµÄ³ÌÐò±ÈÒ»¸ö¶¯Ì¬Á´½Ó³ÌÐòÉÔ´óЩµ«¸ü¿ì(3-5%)¡£È»¶ø£¬Ò»¸öÎÊÌâÊÇÄã²»ÄÜʹÓþ²Ì¬Á´½ÓµÄÓû§¶¨Ò庯Êý(UDF)¡£Èç¹ûÄã×¼±¸±àд»òʹÓÃUDFº¯Êý(ÕâÖ»¶ÔC»òC++³ÌÐòÔ±)£¬Äã±ØÐë±àÒëMySQL±¾Éí£¬Ê¹Óö¯Ì¬Á´½Ó¡£

Èç¹ûÄãÕýÔÚʹÓÃÒ»¸ö»ùÓÚlibc-µÄϵͳ(¶ø²»ÊÇÒ»¸öglibc2ϵͳ)£¬Ä㽫¿ÉÄÜÅöµ½¶þ½øÖÆ·¢ÐеÄÖ÷»úÃû½âÎöºÍgetpwnam()µÄһЩÎÊÌ⣨ÕâÊÇÒòΪglibc²»ÐÒµØÒÀÀµÓÚһЩ°üÀ¨½âÎöÖ÷»úÃûºÍgetwpent()µÄÍⲿ¿â£¬ÉõÖÁÔÚÓÃ-static±àÒëʱ)¡£ÔÚÕâÖÖÇé¿öÏ£¬µ±ÄãÔËÐÐmysql_install_dbʱ£¬Äã¿ÉÄܵõ½ÏÂÁдíÎóÐÅÏ¢£º

sorry, the host 'xxxx' could not be looked up

»òµ±Äã³¢ÊÔÒÔ --user Ñ¡ÏîÔËÐÐ mysqld ʱµÄÏÂÁдíÎó£º

getpwnam : No such fileor directory

ÄãÄÜÓÃÏÂÁз½·¨Ö®Ò»½â¾öÕâ¸öÎÊÌ⣺

MySQLµÄLinux-Intel¶þ½øÖÆ´úÂëºÍRPM·¢ÐаæÊÇΪ×î¸ß¿ÉÄܵÄËٶȶøÅäÖõġ£ÎÒÃÇ×ÜÊÇŬÁ¦Ê¹ÓÿÉÓõÄ×î¿ìµÄÎȶ¨µÄ±àÒëÆ÷¡£

MySQLµÄPerlÖ§³ÖÒªÇóPerl 5.004_03»ò¸üС£

4.6.3.2 HP-UX ×¢ÒâÊÂÏî

Õë¶ÔHP-UXµÄMySQL¶þ½øÖÆ·Ö·¢×÷Ϊһ¸öHP depot£¨²Ö¿â£©»òtar Îļþ¸ñʽ·Ö·¢µÄ¡£ÎªÁËʹÓÃdepotÎļþ£¬Äã±ØÐëÔËÐÐÖÁÉÙHP-UX 10.x ÒÔ±ã·ÃÎÊHPµÄÈí¼þ²Ö¿â¹¤¾ß¡£

MySQLµÄHP°æ±¾ÔÚÔËÐÐHP-UX 10.20ϵÄHP 9000/8xx ·þÎñÆ÷ÉϱàÒ룬²¢ÇÒʹÓÃMIT-pthreads¡£ËüÒÑÖª¿ÉÔÚÕâÖÖÅäÖÃϺܺõع¤×÷¡£MySQL 3.22.26ºÍ¸üаæÒ²ÓÃHPÔ­ÉúḬ̈߳ü¹¹Ôì¡£

ÆäËû¿ÉÒÔÔËÐеÄÅäÖãº

ÏÂÁÐÅäÖü¸ºõ¿Ï¶¨²»ÄÜÔËÐУº

ΪÁ˰²×°·Ö·¢£¬Ê¹ÓÃÏÂÃæµÄÃüÁîÖ®Ò», ÕâÀï/path/to/depotÊDzֿâÎļþµÄÍêÕû·¾¶£º

depotÔÚ¡°/opt/mysql¡±´æ·Å¶þ½øÖÆ´úÂëºÍ¿âÎļþ²¢ÔÚ¡°/var/opt/mysql¡±´æ·ÅÊý¾Ý¡£depotÒ²ÔÚ¡°/sbin/init.d¡±ºÍ¡° /sbin/rc2.d¡±Àï´´½¨Êʵ±µÄÈë¿ÚÒÔ×Ô¶¯µØÔÚÒýµ¼Ê±Æô¶¯·þÎñÆ÷¡£ÏÔÈ», ÕâÓбØÒªÒÔrootÉí·ÝÀ´°²×°¡£

ΪÁ˰²×°HP-UX tar·Ö·¢£¬Äã±ØÐëÓÐGNU tarµÄÒ»¸ö¿½±´¡£

4.7 °²×°MySQLÔ´´úÂë·Ö·¢

ÄãÐèÒªÏÂÁй¤¾ß¹¹Ôì²¢°²×°MySQLÔ´´úÂ룺

Èç¹ûÄãÓöµ½ÎÊÌ⣬µ±Ïòmysql@lists.mysql.comÓʼÄÎÊÌâʱ£¬ÇëһֱʹÓÃmysqlbug¡£¾ÍËãÎÊÌâ²»ÊÇÒ»¸öbug£¬mysqlbugÊÕ¼¯ÏµÍ³ÐÅÏ¢£¬½«ÓÐÖúÓÚÆäËüÈ˽â¾öÄãµÄÎÊÌâ¡£Èç¹û²»Ê¹ÓÃmysqlbug£¬Äã¼õÉٵõ½¹ØÄãÎÊÌâµÄÒ»¸ö½â¾ö·½°¸µÄ¿ÉÄÜÐÔ£¡ÔÚÄã½â°ü·Ö·¢ºó£¬Äã»áÔÚ¡°scripts¡±Ä¿Â¼ÏÂÕÒµ½mysqlbug¡£¼û2.3 ÔõÑù±¨¸æ´íÎó»òÎÊÌâ¡£

4.7.1 ¿ìËÙ°²×°¸ÅÊö

Äã±ØÐëÖ´ÐеݲװMySQLÔ´´úÂë·Ö·¢µÄ»ù±¾ÃüÁîÊÇ(´ÓÒ»¸ö½â°üµÄtarÎļþ)£º

shell>configure
shell>make
shell>make install
shell>scripts/mysql_install_db 
shell>/usr/local/mysql/bin/safe_mysqld &

Èç¹ûÄã´ÓÒ»¸öÔ´´úÂëRPM¿ªÊ¼£¬ÄÇôִÐÐÈçÏÂÃüÁî¡£

shell> rpm -- rebuild MySQL-VERSION.src.rpm

ÕâÑùÄãÖÆ×÷Ò»¸ö¿ÉÒÔ°²×°µÄ¶þ½øÖÆRPM¡£

Èç¹ûÄã°²×°ÁËDBIºÍMsql-Mysql-modulesPerlÄ£¿é£¬Äã¿ÉÒÔÀûÓÃbin/mysql_setpermission½Å±¾Ôö¼ÓÐÂÓû§¡£

ÒÔÏÂÊǸüÏêϸµÄÃèÊö£º

ΪÁ˰²×°Ô´´úÂë·Ö·¢£¬°´ÕÕÏÂÁв½Ö裬Ȼºó¼ÌÐøµ½4.15 °²×°ºóÆÚµÄÉèÖÃÓë²âÊÔ£¬½øÐа²×°ºóÆÚµÄ³õʼ»¯Óë²âÊÔ¡£

  1. Ìôѡһ¸öÄãÒªÔÚÆäÏÂÃæ½â°ü·Ö·¢µÄĿ¼£¬²¢ÇÒ½øÈë¸ÃĿ¼¡£
  2. ´Ó½Ú4.1 ÔõÑù»ñµÃMySQLÖÐÁгöµÄÕ¾µãÖ®Ò»»ñµÃÒ»¸ö·Ö·¢Îļþ¡£MySQLÔ´´úÂë·Ö·¢ÒÔѹËõµÄtarµµ°¸Ìṩ£¬²¢ÇÒÓÐÀàËÆÓÚ¡°mysql-VERSION.tar.gz¡±µÄÃû×Ö£¬ÕâÀïµÄVERSIONÊÇÒ»¸öÀàËÆ3.23.7-alphaµÄÊý×Ö¡£
  3. ÔÚµ±Ç°Ä¿Â¼Ï½â°ü·Ö·¢£º
    shell> gunzip < mysql-VERSION.tar.gz | tar  xvf -

    Õâ¸öÃüÁî´´½¨ÃûΪ¡°mysql-VERSION¡±µÄÒ»¸öĿ¼¡£

  4. ½øÈë½â°ü·Ö·¢µÄ¶¥¼¶Ä¿Â¼£º
     shell> cd  mysql-VERSION
  5. ÉèÖ÷¢Ðа汾²¢ÇÒ±àÒ룺
    shell>./configure--prefix=/usr/local/mysql 
    shell>make 
    

    µ±ÄãÔËÐÐconfigureʱ£¬Äã¿ÉÄÜÏëÒªÖ¸¶¨Ò»Ð©Ñ¡ÏÔËÐÐ./configure --helpµÃµ½Ò»ÕÅÑ¡Ïî±í¡£4.7.3 µäÐ͵ÄconfigureÑ¡ÏîÌÖÂÛһЩºÜÓÐÓõÄÑ¡Ïî¡£Èç¹ûconfigureʧ°Ü£¬Ä㽫·¢ËͰüº¬ÄãÈÏΪÄܰïÄã½â¾ö¸ÃÎÊÌâµÄ¡°config.log¡±µÄÓʼþ£¬Èç¹ûconfigureÒì³£Í˳ö£¬Ò²Òª°üÀ¨configureµÄ×îºó¼¸ÐÐÊä³ö¡£ÓÃmysqlbug½Å±¾ÓʼĴíÎ󱨸档¼û2.3 ÔõÑù±¨¸æ´íÎóºÍÎÊÌâ¡£Èç¹û±àÒëʧ°Ü£¬¼û½Ú4.8 ±àÒëÎÊÌ⣿£¬°ïÖú½â¾öºÜ¶à³£¼ûÎÊÌâ¡£

  6. °²×°ËùÓж«Î÷£º
    shell>make install

    Äã¿ÉÄÜÐèÒªrootÓû§À´ÔËÐÐÕâ¸öÃüÁî¡£

  7. ´´ÔìMySQLÊÚȨ±í(Ö»ÓÐÄãÒÔǰû°²×°MySQLÊDZØÐèµÄ)£º
    shell>scripts/mysql_install_db

    ×¢Ò⣬ÔÚÔËÐÐmysql_install_dbʱ£¬ÄÇЩ±È3.22.10¾ÉµÄMySQL°æ±¾Æô¶¯MySQL·þÎñÆ÷¡£ÏÖÔÚ²»ÊÇÕâÑùÁË£¡

  8. Èç¹ûÄãÏëÒª°²×°¶ÔPerl DBI/DBD½Ó¿ÚµÄÖ§³Ö£¬¼û4.10 Perl°²×°×¢Òâ˵Ã÷¡£
  9. Èç¹ûÄãÏëÒªMySQLÔÚÄãÒýµ¼»úÆ÷ʱ×Ô¶¯µØÆô¶¯£¬Äã¿ÉÒÔ¿½±´support-files/mysql.serverµ½ÄãµÄϵͳÖÐÓÐÆô¶¯ÎļþµÄµØ·½¡£¸ü¶àµÄÐÅÏ¢¿ÉÒÔÔÚsupport-files/mysql.server½Å±¾ÀïºÍ4.15.3 ×Ô¶¯Æô¶¯ºÍÍ£Ö¹MySQLÕÒµ½¡£

ÔÚËùÓж«Î÷°²×°ÍêÒÔºó£¬ÄãÓ¦¸Ã³õʼ»¯²¢ÇÒ²âÊÔÄãµÄ·Ö·¢¡£

Äã¿ÉÒÔÓÃÏÂÁÐÃüÁîÆô¶¯MySQL·þÎñÆ÷£¬ÕâÀïBINDIRÊÇsafe_mysqld±»°²×°µÄĿ¼(ȱʡΪ¡°/usr/local/bin¡±)£º

shell> BINDIR/safe_mysqld &

Èç¹ûÕâ¸öÃüÁîÌáʾmysqld daemon ended²¢ÂíÉÏʧ°Ü£¬ÄÇôÄãÄÜÔÚÎļþ¡°mysql-data-directory/'hostname'.err¡±ÕÒµ½Ò»Ð©ÐÅÏ¢¡£¿ÉÄܵÄÔ­ÒòÊÇÄãÒѾ­ÓÐÁíÍâÒ»¸öÕýÔÚÔËÐеÄmysqld·þÎñÆ÷¡£¼û19.3 ÔÚͬһ̨»úÆ÷ÉÏÔËÐжà¸öMySQL·þÎñÆ÷¡£

²Î¼û4.15 °²×°ºóÆÚµÄÉèÖÃÓë²âÊÔ¡£

4.7.2 ÔËÓò¹¶¡

ÓÐʱ²¹¶¡³öÏÖÔÚÓʼþÁбíÉÏ»ò·ÅÔÚMySQL FTPµØµãµÄ²¹¶¡Çø¡£

ΪÁËʹÓÃÀ´×ÔÓʼþÁбíµÄÒ»¸ö²¹¶¡£¬±£´æ²¹¶¡³öÏÖÔÚÎļþµÄÏûÏ¢£¬½øÈëÄãµÄMySQLÔ´´úÂëÊ÷µÄ¶¥¼¶Ä¿Â¼²¢ÔËÐÐÕâЩÃüÁ

shell>patch - p1 <patch-file-name 
shell>rm config.cache
shell>make clean

À´×ÔFTPµØµãµÄ²¹¶¡ÊÇ×÷ΪÆÕͨÎı¾Îļþ»ò×÷Ϊ±»Ñ¹ËõÁ˵ÄgzipÎļþ·Ö·¢¡£ÔËÓÃÒ»¸öÎı¾µÄ²¹¶¡ÈçÉÏÊöÓʼþÁÐ±í²¹¶¡£¬ÎªÁËʹÓÃÒ»¸öѹËõµÄ²¹¶¡£¬½øÈëÄãµÄMySQLÔ´´úÂëÊ÷¶¥¼¶Ä¿Â¼²¢ÔËÐÐÕâЩÃüÁ

shell>gunzip <patch-file-name.gz |patch - p1 
shell>rm  config.cache 
shell>make clean

ÔÚʹÓÃÒ»¸ö²¹¶¡ÒԺ󣬰´ÕÕÕý³£µÄÔ´´úÂë°²×°µÄÖ¸Á¿ªÊ¼./configure²½Öè¡£ÔÚÔËÐÐmake installºó£¬ÖØÆôÄãµÄMySQL·þÎñÆ÷¡£

ÔÚÔËÐÐmake installǰ£¬Äã¿ÉÄÜÐèÒª¹Ø±ÕËùÓÐÕýÔÚÔËÐеķþÎñÆ÷£¨Ê¹ÓÃmysqladmin shutdown)¡£Èç¹ûÒ»¸ö³ÌÐòµÄÐÂ°æ±¾Ìæ´úµ±Ç°ÕýÔÚÖ´Ðеİ汾£¬Ò»Ð©ÏµÍ³²»ÔÊÐíÄã°²×°Ëü¡£

4.7.3 µäÐ͵ÄconfigureÑ¡Ïî

configure½Å±¾¸øÄãÒ»¸öºÜ´óµÄ¿ØÖÆÈ¨À´ÈçºÎÅäÖÃÄãµÄMySQL·Ö·¢¡£µäÐ͵أ¬ÄãʹÓÃconfigureÃüÁîÐеÄÑ¡Ïî½øÐС£ÄãÒ²¿ÉÒÔÓÃÕýÈ·µÄ»·¾³±äÁ¿×÷ÓÃÓÚconfigure¡£¶ÔÓÚÒ»¸öÓÉconfigureÖ§³ÖµÄÑ¡ÔñÁÐ±í£¬ÔËÐÐÕâ¸öÃüÁ

shell> ./configure -- help

һЩ¸ü³£ÓõÄconfigureÑ¡Ïî¼ûÏÂÃæµÄÃèÊö£º

4.8 ±àÒëÎÊÌ⣿

ËùÓÐMySQL³ÌÐòÔÚSolarisÉÏʹÓÃgcc±àÒë²¢ÇÒûÓÐÈκξ¯¸æ¡£ÔÚÆäËûϵͳÉÏ£¬ÓÉÓÚϵͳ°üº¬ÎļþµÄ²î±ð¿ÉÄܻᷢÉú¾¯¸æ¡£¶ÔÓÚʹÓÃMIT-pthreadsʱ·¢ÉúµÄ¾¯¸æ£¬¼û4.9 MIT-pthreads ×¢ÒâÊÂÏî¡£ÆäËûÎÊÌ⣬¼ì²éÏÂÃæµÄ±í¡£

Ðí¶àÎÊÌâµÄ½â¾ö·½°¸Éæ¼°ÖØÐÂÅäÖá£Èç¹ûÄãȷʵÐèÒªÖØÐÂÅäÖã¬×¢ÒâÏÂÁÐÊÂÏ

ΪÁË·ÀֹʹÓþɵÄÅäÖÃÐÅÏ¢»òÄ¿±êÎļþ£¬ÔÚÖØÐÂÔËÐÐconfigureǰÔËÐÐÕâЩÃüÁ

shell>rm  config.cache 
shell>make clean

ÁíÍ⣬Äã¿ÉÒÔÔËÐÐmake distclean¡£

ϱíÃèÊöÁËһЩ×î³£·¢ÉúµÄ±àÒëMySQLµÄÎÊÌ⣺

4.9 MIT-pthreads×¢ÒâÊÂÏî

Õâ½ÚÃèÊöÔÚʹÓà MIT-pthreads ËùÉæ¼°µÄһЩÎÊÌâ¡£

×¢Ò⣺ÔÚLinuxÉÏ£¬ÄãÓ¦¸Ã²»Ê¹ÓÃMIT-pthreads¶øÊǰ²×°LinuxThreads£¡¼û4.11.5 Linux ×¢ÒâÊÂÏî(ËùÓеÄLinux °æ±¾)¡£

Èç¹ûÄãµÄϵͳ²»ÌṩԭÉúµÄÏß³ÌÖ§³Ö£¬Ä㽫ÐèҪʹÓÃMIT-pthreads°ü¹¹ÔìMySQL¡£Õâ°üÀ¨´ó¶àÊýFreeBSDϵͳ¡¢SunOS 4.x ¡¢Solaris 2.4ºÍ¸üÔç°æ±¾¼°ÆäËû£¬¼û4.2 MySQL Ö§³ÖµÄ²Ù×÷ϵͳ¡£

4.10 Perl °²×°ËµÃ÷

4.10.1 ÔÚUnixÉϰ²×°Perl

Perl¶ÔMySQLµÄÖ§³Ö½èÖúDBI/DBD¿Í»§½Ó¿Ú¶øÌṩ¡£¼û20.5 MySQL Perl API¡£Perl DBD/DBI¿Í»§´úÂëÒªÇóPerl 5.004»òÒÔºó°æ±¾¡£Èç¹ûÄãÓÐPerlµÄÒ»¸ö¸ü¾ÉµÄ°æ±¾£¬½Ó¿Ú½«²»Äܹ¤×÷¡£

MySQL PerlÖ§³ÖÒ²ÒªÇóÄã°²×°ÁËMySQL¿Í»§±à³ÌÖ§³Ö¡£Èç¹ûÄã´ÓRPMÎļþ°²×°MySQL£¬¿Í»§³ÌÐòÔÚ¿Í»§RPMÖУ¬µ«Êǿͻ§±à³ÌÖ§³ÖÔÚ¿ª·¢ÕßRPM¡£È·¶¨Äã°²×°Á˺óÒ»¸öRPM ¡£

¶ÔÓÚ°æ±¾3.22.8£¬PerlÖ§³ÖÊÇÓëÖ÷ÒªMySQL·¢Ðа汾µ¥¶À·Ö·¢¡£Èç¹ûÄãÏëÒª°²×°PerlÖ§³Ö£¬ÄãÐèÒªµÄÎļþÄÜ´Óhttp://www.mysql.com/Contrib»ñµÃ¡£

Perl ·Ö·¢ÒÔѹËõµÄtarµµ°¸Ìṩ£¬²¢ÇÒÓÐÒ»¸öÀàËÆ¡°MODULE-VERSION.tar.gz¡±µÄÃû×Ö£¬ÕâÀïMODULEÊÇÄ£¿éÃû×Ö²¢ÇÒVERSIONÊǰ汾ºÅ¡£ÄãÓ¦¸ÃµÃµ½Data-Dumper¡¢DBIºÍMsql-Mysql-modules·Ö·¢²¢°´´Ë´ÎÐò°²×°ËûÃÇ¡£°²×°¹ý³ÌÏÔʾ³öÔÚÏÂÃæ£¬ÏÔʾµÄÀý×ÓÕë¶ÔData-DumperÄ£¿é, µ«ÊÇËùÓÐ3¸ö¹ý³ÌÊÇÏàͬµÄ¡£

  1. ½â°ü·Ö·¢µ½µ±Ç°Ä¿Â¼£º
    shell> gunzip < Data-Dumper-VERSION.tar.gz | tar  xvf -

    Õâ¸öÃüÁî´´½¨µÄÒ»¸öÃûΪ¡°Data-Dumper-VERSION¡±µÄĿ¼¡£

  2. ½øÈë½â°ü·Ö·¢µÄ¶¥¼¶Ä¿Â¼£º
    shell> cd  Data-Dumper-VERSION
  3. ¹¹Ôì·Ö·¢²¢ÇÒ±àÒëËùÓж«Î÷£º
    shell> perl Makefile.PL
    shell> make
    shell> make test
    shell> make install
    

make testÃüÁîºÜÖØÒª£¬ÒòΪËüÑé֤ģ¿éÕýÔÚ¹¤×÷¡£×¢Ò⣺ÔÚÄãMsql-Mysql-modules°²×°ÆÚ¼äÔËÐиÃÃüÁîÊÔÑé½Ó¿Ú´úÂëʱ£¬MySQL·þÎñÆ÷±ØÐëÕýÔÚÔËÐУ¬·ñÔò²âÊÔ½«Ê§°Ü¡£

ÎÞÂÛºÎʱÄã°²×°Ò»¸öа汾µÄMySQL£¬Öؽ¨²¢ÇÒÖØÐ°²×°Msql-Mysql-modules·Ö·¢ÊÇÒ»¸öºÃÖ÷Òâ, ÌØ±ðÊÇÈç¹ûÄãÔÚÉý¼¶MySQLºó£¬¹Û²ìËùÓÐÒì³££¬ÈçÄãµÄDBI½Å±¾ºËÐÄÇãµ¹(core dump)¡£

Èç¹ûÄãûÓÐȨÏÞÔÚϵͳĿ¼Ï°²×°PerlÄ£¿é£¬»òÈç¹ûÄã°²×°±¾µØPerlÄ£¿é£¬ÏÂÁвο¼Êé¿ÉÒÔ°ïÖúÄ㣺

http://www.iserver.com/support/contrib/perl5/modules.html

ÔÚ±êÌâInstalling New Modules that Require Locally Installed ModulesÏÂÃæ²éÕÒ¡£

4.10.2 ÔÚWin32Éϰ²×°ActiveState Perl

ÔÚ Win32 Éϰ²×° ActiveState PerlµÄMySQL DBDµÄÄ£¿é, ÄãÓ¦¸Ã×öÏÂÁв½Ö裺

Èç¹ûÄã²»ÄÜʹÉÏÊö²½Ö蹤×÷£¬ÄãÓ¦¸Ã°²×°MyODBCÇý¶¯³ÌÐò²¢ÇÒͨ¹ýODBCÁ¬½ÓMySQL·þÎñÆ÷¡£

use DBI;
$dbh= DBI->connect("DBI:ODBC:$dsn","$user","$password") || 
  die "Got error $DBI::errstr when connecting to $dsn\n";

4.10.3 ÔÚWin32Éϰ²×°MySQL Perl·Ö·¢

MySQL Perl·Ö·¢°üº¬DBI¡¢DBD:MySQLºÍDBD:ODBC¡£

4.10.4 ʹÓÃPerlDBI/DBD½Ó¿ÚµÄÎÊÌâ

Èç¹û Perl ±¨¸æËü²»ÄÜÕÒµ½../mysql/mysql.soÄ£¿é£¬ÄÇôÎÊÌâ¿ÉÄÜÊǸÃPerl²»ÄÜÕÒµ½¹²Ïí¿âÎļþ¡°libmysqlclient.so¡±¡£

Äã¿ÉÓÃÏÂÁÐÈκÎÒ»¸ö·½·¨ÐÞÕýËüÕ⣺

Èç¹ûÄã´ÓDBD-mysqlµÃµ½ÏÂÁдíÎó£¬Äã¿ÉÄÜÕýÔÚʹÓÃgcc£¨»òʹÓÃÒ»¸ö¾ÉµÄÓÃgcc±àÒëµÄ¶þ½øÖÆ´úÂë)£º

/usr/bin/perl: can't resolve symbol '__moddi3'
/usr/bin/perl: can't resolve symbol '__divdi3'

µ±¡°mysql.so¡±¿âÎļþ±»¹¹Ôìʱºò£¬ÎªÁ´½ÓÃüÁî¼ÓÉÏ-L/usr/lib/gcc-lib/... -lgcc(µ±Äã±àÒëPerl¿Í»§Ê±¼ì²éÕë¶Ô¡°mysql.so¡±µÄmakeÊä³ö)¡£-LÑ¡ÏîÓ¦¸ÃÖ¸¶¨¡°libgcc.a¡±ÔÚÄãϵͳÉÏËùÔÚĿ¼µÄ·¾¶Ãû¡£

Õâ¸öÎÊÌâµÄÁíÒ»¸öÔ­Òò¿ÉÄÜÊÇPerlºÍMySQL¶¼²»ÊÇÓÃgcc±àÒëµÄ¡£ÔÚÕâÖÖÇé¿öÏ£¬Äã¿ÉÒÔ¶¼ÓÃgcc±àÒëÒÔ½â¾ö²»Æ¥Åä¡£

Èç¹ûÄãÏëÒªÔÚÒ»¸ö²»Ö§³Ö¶¯Ì¬Á´½Ó(ÏóSCOÄÇÑù)µÄϵͳÉÏʹÓÃPerlÄ£¿é£¬Äã¿ÉÒÔ²úÉú°üÀ¨DBIºÍDBD-mysqlµÄPerlµÄÒ»¸ö¾²Ì¬°æ±¾¡£ÕâÖÖÔËÐз½·¨ÊÇÄãÉú³ÉÒ»¸öÁ´½ÓÁËDBI´úÂëµÄPerl°æ±¾²¢ÔÚ×îеÄPerlÉϰ²×°Ëü£¬È»ºóÄãʹÓÃËüÀ´¹¹Ô츽¼ÓÁ´½ÓÁËDBD´úÂëµÄPerl°æ±¾£¬²¢ÇÒ°²×°Ëü¡£

ÔÚ SCO ÉÏ£¬Äã±ØÐëÓÐÏÂÁл·¾³±äÁ¿ÉèÖãº

shell> LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib:/usr/progressive/lib
»ò
shell> LD_LIBRARY_PATH=/usr/lib:/lib:/usr/local/lib:/usr/ccs/lib:/usr/progressive/lib:/usr/skunk/lib
shell> LIBPATH=/usr/lib:/lib:/usr/local/lib:/usr/ccs/lib:/usr/progressive/lib:/usr/skunk/lib
shell> MANPATH=scohelp:/usr/man:/usr/local1/man:/usr/local/man:/usr/skunk/man:

Ê×ÏÈ, ÔÚDBI·Ö·¢ËùÔÚĿ¼ÏÂÔËÐÐÏÂÁÐÃüÁ´´Ôì°üÀ¨Ò»¸ö¾²Ì¬Á´½ÓµÄPerl DBI£º

shell> perl Makefile.PL LINKTYPE=static
shell> make
shell> make install
shell> make perl

È»ºóÄã±ØÐ밲װеÄPerl¡£make perlµÄÊä³ö½«ÏÔʾÕýÈ·µÄÄãÐèÒªÖ´ÐÐÊ©Ðа²×°µÄmakeµÄÃüÁî¡£ÔÚSCOÉÏ£¬ÊÇmake -f Makefile.aperl inst_perl MAP_TARGET=perl.

½ÓÏÂÀ´£¬ÔÚMsql-Mysql-modules·Ö·¢ËùÔÚĿ¼Ï£¬Ê¹ÓøղŴ´½¨µÄPerlÀ´´´½¨Í¬Ñù°üÀ¨Ò»¸ö¾²Ì¬Á´½ÓµÄPerlDBD::mysqlµÄÁíÒ»¸öPerl£º

shell> perl Makefile.PL LINKTYPE=static 
shell> make 
shell> make install 
shell> make perl

×îºó, ÄãÓ¦¸Ã°²×°Õâ¸öеÄPerl¡£¶øÇÒ£¬make perlµÄÊä³öÖ¸³öʹÓõÄÃüÁî¡£

4.11 ÏµÍ³ÌØ¶¨µÄÎÊÌâ

ÏÂÃæµÄÕ½Ú˵Ã÷ÔÚ´ÓÔ´´úÂë·Ö·¢°²×°MySQLʱ£¬·¢ÉúÔÚÌØ¶¨µÄϵͳÉϲ¢Òѹ۲쵽µÄһЩÎÊÌâ¡£

4.11.1 Solaris×¢ÒâÊÂÏî

ÔÚSolarisÉÏ£¬ÉõÖÁÔÚÄã½â¿ªMySQL·Ö·¢ÒÔǰ£¬Äã¿ÉÄÜÏÝÈëÀ§¾³£¡Solaris tar²»ÄÜ´¦Àí³¤ÎļþÃû×Ö£¬Òò´ËÄãÔÚ´ò¿ªMySQLʱ£¬¿ÉÄÜ¿´µ½ÕâÑùµÄÒ»¸ö´íÎó£º

x mysql-3.22.12-beta/bench/Results/ATIS-mysql_odbc-NT_4.0-cmp-db2,informix,ms-sql,mysql,oracle,solid,sybase, 0 bytes, 0 tape blocks
tar: directory checksum error

ÔÚÕâÖÖÇé¿öÏ£¬Äã±ØÐëʹÓà GNU tar(gtar) ´ò¿ª·Ö·¢¡£ÄãÄÜÔÚhttp://www.mysql.com/Downloads/ÕÒµ½ÎªSolarisµÄÒ»¸öÔ¤±àÒëµÄ¿½±´¡£

SunµÄÔ­ÉúÏß³ÌÖ»¹¤×÷ÔÚSolaris 2.5ºÍ¸ü¸ß°æ±¾ÉÏ¡£¶ÔÓÚ2.4ºÍ¸üÔçµÄ°æ±¾£¬MySQL½«×Ô¶¯µØÊ¹Óà MIT-pthreads ¡£¼û4.9 MIT-pthreads ×¢ÒâÊÂÏî¡£

Èç¹ûÄã´ÓÅäÖõõ½ÏÂÁдíÎó£º

checking for restartable system calls... configure: error can not run test 
programs while cross compiling

ÕâÒâζ×ÅÄãµÄ±àÒëÆ÷°²×°ÓÐЩÎÊÌ⣡ÔÚÕâÖÖÇé¿öÏ£¬ÄãÓ¦¸ÃÉý¼¶±àÒëÆ÷µ½Ò»¸ö¸üеİ汾¡£ÄãÒ²¿ÉÒÔ°ÑÏÂÁÐÐвåÈëµ½config.cacheÎļþÀ´½â¾öÕâ¸öÎÊÌ⣺

ac_cv_sys_restartable_syscalls=${ac_cv_sys_restartable_syscalls='no'}

Èç¹ûÄãÔÚÒ»¸öSPARCÉÏʹÓÃSolaris£¬ÍƼöµÄ±àÒëÆ÷ÊÇegcs1.1.2 »ò¸üС£ÄãÄÜÔÚhttp://egcs.cygnus.com/ÕÒµ½Ëü¡£×¢Ò⣺egs1.1.1 ºÍgcc2.8.1 ²»ÄÜÔÚ SPARC ÉϿɿ¿µØ¹¤×÷£¡

µ±Ê¹ÓÃʱegcs1.1.2ʱ£¬ÍƼöµÄconfigureÃüÁîÐÐÊÇ£º

shell> CC=gcc CFLAGS="-O6" \
       CXX=gcc CXXFLAGS="-O6 -felide-constructors -fno-exceptions -fno-rtti" \
       ./configure --prefix=/usr/local/mysql --with-low-memory

Èç¹ûÄãÓÐSun Workshop 4.2 ±àÒëÆ÷£¬ÄãÄÜÕâÑùÔËÐÐconfigure£º

CC=cc CFLAGS="-xstrconst -Xa -xO4 -native -mt" CXX=CC CXXFLAGS="-xO4 -native -noex -mt" ./configure --prefix=/usr/local/mysql

shell> CC=cc CFLAGS="-Xa -fast -xO4 -native -xstrconst -mt" \
       CXX=CC CXXFLAGS="-noex -XO4 -mt" \
       ./configure
ÄãÒ²¿ÉÒԱ༭configure½Å±¾¸Ä±ä¸ÃÐУº 
#if !defined(__STDC__) || __STDC__ != 1
Ϊ£º 
#if !defined(__STDC__)

Èç¹ûÄãʹÓÃ-XcÑ¡Ïî´ò¿ª__STDC__£¬Sun±àÒëÆ÷²»ÄÜÓà Solaris µÄ¡°pthread.h¡±Í·Îļþ±àÒë¡£ÕâÊÇSunµÄÒ»¸öbug¡£

Èç¹ûmysqldÔÚÔËÐÐʱ·¢³öÏÔʾÔÚÏÂÃæµÄ´íÎóÏûÏ¢£¬ÄãÒѾ­³¢ÊÔÓÃSun±àÒëÆ÷±àÒëMySQL£¬Ã»ÓÐÆôÓöàÏß³ÌÑ¡Ôñ(-mt)£º

libc internal error: _rmutex_unlock: rmutex not held

Ôö¼Ó-mtµ½CFLAGSºÍCXXFLAGS²¢ÇÒÔÙÊÔÒ»ÊÔ¡£

Èç¹ûÄãÔÚÓÃgcc±àÒëMySQLʱµÃµ½ÏÂÁдíÎó£¬ËüÒâζ×ÅÄãµÄgccûÓжÔÄãµÄSolaris°æ±¾½øÐÐÅäÖã¡

shell> gcc -O3 -g -O2 -DDBUG_OFF  -o thr_alarm ...
./thr_alarm.c: In function `signal_hand':
./thr_alarm.c:556: too many arguments to function `sigwait'

ÔÚÕâÖÖÇé¿öÏÂÕýÈ·µÄ×ö·¨Êǵõ½×îа汾µÄegcs£¬²¢ÇÒÓÃÄ㵱ǰµÄgcc±àÒëÆ÷±àÒëËü£¡ÖÁÉÙ¶ÔÓÚ Solaris 2.5£¬¼¸ºõËùÓеÄgcc¶þ½øÖư汾¶¼Óоɵġ¢²»¿ÉÓõİüº¬Îļþ£¬½«ÆÆ»³Ê¹ÓÃÏ̵߳ÄËùÓгÌÐòµÄÎļþ(²¢ÇÒ¿ÉÄÜÊÇÆäËûµÄ³ÌÐò)£¡

Solaris²»ÌṩËùÓÐϵͳ¿âµÄ¾²Ì¬°æ±¾(libpthreadsºÍlibdl)£¬ËùÒÔÄã²»ÄÜÓÃ--static±àÒëMySQL¡£Èç¹ûÄã³¢ÊÔÕâÑù×ö£¬Ä㽫µÃµ½´íÎó£º

ld: fatal: library -ldl: not found

Èç¹ûÌ«¶à½ø³ÌÊÔͼºÜ¿ìµØÁ¬½Ómysqld£¬Ä㽫ÔÚMySQLÈÕÖ¾ÎļþÖп´¼ûÕâ¸ö´íÎó£º

Error in accept: Protocol error

Äã¿ÉÒÔÊÔ×ÅÓÃ--set-variable back_log=50Ñ¡ÏîÆô¶¯·þÎñÆ÷×÷ΪËüµÄÒ»¸ö½â¾ö°ì·¨¡£

Èç¹ûÄãÕýÔÚÁ´½ÓÄã×Ô¼ºµÄMySQL¿Í»§£¬µ±ÄãÊÔ×ÅÖ´ÐÐËüʱ£¬Äã¿ÉÄܵõ½ÏÂÁдíÎó£º

ld.so.1: ./my: fatal: libmysqlclient.so.#: open failed: No such file or directory

Õâ¸öÎÊÌâÄÜÓÃÏÂÁз½·¨Ö®Ò»±ÜÃ⣺

4.11.2 Solaris 2.7 ×¢ÒâÊÂÏî

ͨ³£ÄãÄÜÔÚ Solaris 2.7 ÉÏʹÓà Solaris 2.6 ¶þ½øÖÆ´úÂë¡£´ó¶àÊýSolaris 2.6 µÄÎÊÌâÒ²ÊÊÓÃÓÚSolaris 2.7¡£

×¢Ò⣺MySQL3.23.4 ºÍ¸ü¸ß°æ±¾Ó¦¸ÃÄÜ×Ô¶¯¼ì²â Solaris 2.7 ²¢ÇÒÆôÓÃÏÂÁÐÎÊÌâµÄ½â¾ö°ì·¨£¡

Solaris 2.7 ÔÚ°üÀ¨ÎļþÖÐÓÐһЩbug£¬ÔÚʹÓÃgccʱ£¬Äã¿ÉÒÔ¿´¼ûÏÂÁдíÎó£º

/usr/include/widec.h:42: warning: `getwc' redefined
/usr/include/wchar.h:326: warning: this is the location of the previous
definition

Èç¹û³öÏÖÕâÖÖÇé¿ö£¬Äã¿ÉÒÔ×öÏÂÁÐÊÂÇé½â¾öÕâ¸öÎÊÌ⣺

¿½±´/usr/include/widec.hµ½.../lib/gcc-lib/os/gcc-version/include²¢ÇҸıäµÚ41ÐУº

#if     !defined(lint) && !defined(__lint)

Ϊ

#if     !defined(lint) && !defined(__lint) && !defined(getwc)

ÁíÍ⣬Äã¿ÉÒÔÖ±½Ó±à¼­¡°/usr/include/widec.h¡±¡£ÕâÁ½ÖÖ·½·¨£¬ÔÚÄã½øÐÐÐÞÕýÒÔºó£¬ÄãÓ¦¸Ãɾ³ý¡°config.cache¡±²¢ÇÒÔÙÔËÐÐconfigure£¡

Èç¹ûµ±ÄãÔËÐÐmakeʱ£¬ÄãµÃµ½ÏóÕâÑù´íÎó£¬ÄÇÊÇÒòΪconfigureû¼ì²â¡°curses.h¡±Îļþ(¿ÉÄÜÒòΪ/usr/include/widec.hµÄ´íÎó)£º

In file included from mysql.cc:50:
/usr/include/term.h:1060: syntax error before `,'
/usr/include/term.h:1081: syntax error before `;'

½â¾öËüµÄ·½°¸ÊÇ×öÏÂÁв½ÖèÖ®Ò»£º

4.11.3 Solaris x86 ×¢ÒâÊÂÏî

Èç¹ûÄãÕýÔÚÔÚ Solaris x86ÉÏʹÓÃgcc»òegcs£¬²¢ÇÒÄãÅöµ½ÁËÔÚ×°ÔØÊ±µÄºËÐÄÇãµ¹£¨core dump£©ÎÊÌ⣬ÄãÓ¦¸ÃʹÓÃÏÂÁÐconfigureÃüÁ

shell> 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

ÓÃlibstdc++¿âºÍÓëC++Òì³£´¦ÀíÀ´±ÜÃâÕâ¸öÎÊÌâ¡£

Èç¹ûÕâûÓаïÖú£¬ÄãÓ¦¸Ã±àÒëÒ»¸öµ÷ÊÔ°æ±¾²¢ÇÒÓÃÒ»¸ö×Ù¼£ÎļþÔËÐÐËü»òÔÚgdbÏÂÔËÐÐËü¡£¼ûG.1 µ÷ÊÔÒ»¸ö MySQL ·þÎñÆ÷¡£

4.11.4 SunOS 4 ×¢ÒâÊÂÏî

ÔÚ SunOS 4 ÉÏ£¬ ÐèÒªMIT-pthreads ±àÒëMySQL£¬·´¹ýÀ´ÕâÒâζ×ÅÄ㽫ÐèÒªGNU make¡£

һЩSunOS 4ϵͳµÄ¶¯Ì¬¿âºÍlibtoolÓÐÎÊÌâ¡£Äã¿ÉÒÔʹÓÃÏÂÁÐconfigureÐÐÀ´±ÜÃâÕâ¸öÎÊÌ⣺

shell> ./configure --disable-shared --with-mysqld-ldflags=-all-static

µ±±àÒëreadlineʱ£¬Äã¿ÉÄܵõ½¹ØÓÚÖØ¸´¶¨ÒåµÄ¾¯¸æ£¬ÕâЩ¿ÉÒÔ±»ºöÂÔ¡£

µ±±àÒëmysqldʱºò£¬ ½«ÓÐһЩimplicit declaration of function¾¯¸æ£¬ÕâЩ¿ÉÒÔ±»ºöÂÔ¡£

4.11.5 Linux ×¢ÒâÊÂÏî(ËùÓÐLinux°æ±¾)

MySQLÔÚLinuxÉÏʹÓà LinuxThreads ¡£Èç¹ûÄãÕýÔÚʹÓÃÒ»¸öûÓÐglibc2µÄÀϵÄLinux°æ±¾£¬Äã±ØÐëÔÚ³¢ÊÔ±àÒëMySQLǰ°²×°LinuxThreads¡£http://www.mysql.com/Downloads/Linux

×¢Ò⣺µ«Äã×öINSERT DELAYEDʱ£¬ËùÓõİüÀ¨2.1.1¼°ÒÔǰµÄglibc°æ±¾ÔÚpthread_mutex_timedwait´¦ÀíÉÏÓÐÒ»¸öÖÂÃü´íÎó£¬Èç¹ûÄãÕýÔÚʹÓÃINSERT DELAYED£¬Äã±ØÐë°ÑÏÂÁв¹¶¡¼Óµ½ÄãµÄglibc¿âÖУºhttp£º//www.mysql.com/Downloads/Patches/glibc-pthread_cond_timedwait.patch¡£MySQL 3.23.7°üº¬Á˶ÔÕâ¸ö´íÎóµÄÒ»¸öÁÙʱ½â¾ö°ì·¨¡£

Èç¹ûÄã²»ÄÜÆô¶¯mysqld»òÈç¹ûmysql_install_db²»¹¤×÷£¬Çë¼ÌÐø¶ÁÏÂÈ¥£¡Õâ½ö·¢ÉúÔÚÓÐLinuxThreadsÎÊÌâ»òlibc/glibc¿âΪÌâµÄLinuxϵͳÉÏ¡£Óкܶà¼òµ¥µÄ½â¾ö°ì·¨ÈÃMySQL¹¤×÷£¡×î¼òµ¥ÊÇʹÓÃÕë¶ÔLinux x86µÄ¶þ½øÖư汾µÄMySQL£¨²»ÊÇRPM)£¬Õâ¸ö°æ±¾µÄÒ»¸öºÃµÄ·½ÃæÊÇËü¿ÉÄܱÈÄã±àÒëÄã×Ô¼ºµÄÈκΰ汾¿ì10%£¡¼û10.2.1 ±àÒëºÍÁ´½ÓÈçºÎÓ°Ïì MySQL µÄËÙ¶È¡£

¶þ½øÖÆ·Ö·¢µÄÒ»¸öÒÑÖªÎÊÌâÊÇÓëʹÓÃlibcµÄ¸üÀϵÄLinuxϵͳ£¨ÈçRedHat 4.x »ò Slackware)£¬Ä㽫µÃµ½ÓйØÖ÷»úÃû½â¾öµÄһЩ·ÇÖÂÃüÎÊÌâ¡£¼û4.6.3.1 Linux×¢ÒâÊÂÏî¡£

ʹÓÃlibc.so.5.3.12£¬myisamchk½«¹ÒÆð£¬Éý¼¶µ½×îÐÂlibcÒÔ½â¾öÕâ¸öÎÊÌâ¡£

µ±Ê¹Óà LinuxThreads ʱ£¬Ä㽫¿´µ½×îÉÙ 3 ½ø³ÌÔÚÔËÐС£ÕâЩÊÂʵÉϵÄỊ̈߳¬¶ÔLinuxThreads¹ÜÀíÆ÷½«ÓÐÒ»¸öỊ̈߳¬Ò»¸öÏ̴߳¦ÀíÁ¬½Ó£¬»¹ÓÐÒ»¸öÏ̴߳¦Àí¸æ¾¯ºÍÐźš£

Èç¹ûÄãÓÃps¿´µ½ÁËÒ»¸öËÀµôµÄmysqldÊØ»¤½ø³Ì£¬Õâͨ³£Òâζ×ÅÄã·¢ÏÖÁËMySQLÀïÃæµÄÒ»¸ö´íÎó»òÄãÓÐÒ»¸ö±»ÆÆ»µµÄÊý¾Ý¿â±í¡£¼û18.1 Èç¹ûMySQL×ÜÊDZÀÀ£Ôõô°ì¡£

Èç¹ûÄãÕýÔÚʹÓÃLinuxThreads²¢ÇÒmysqladmin shutdown²»¹¤×÷£¬Äã±ØÐëÉý¼¶µ½ LinuxThreads 0.7.1 »ò¸üС£

Èç¹ûÄãÕýÔÚʹÓà RedHat £¬Äã¿ÉÄܵõ½ÏóÕâÑùµÄ´íÎó£º

/usr/bin/perl is needed...
/usr/sh is needed...
/usr/sh is needed...

Èç¹ûÊÇÕâÑù£¬ÄãÓ¦¸ÃÉý¼¶rpm°æ±¾µ½¡°rpm-2.4.11-1.i386.rpm¡±ºÍ¡°rpm-devel-2.4.11-1.i386.rpm¡±(»òÒÔºó)¡£

ÄãÄÜ´Óftp://ftp.redhat.com/updates/4.2/i386µÃµ½RedHat 4.2µÄ¿âÎļþÉý¼¶£¬»ò¶ÔÆäËû·Ö·¢http://www.sunsite.unc.edu/pub/Linux/distributions/redhat/code/rpm/¡£

Èç¹ûÄãÕýÔÚÁ´½ÓÄã×Ô¼ºµÄMySQL¿Í»§²¢Çҵõ½´íÎó£º

ld.so.1: ./my: fatal: libmysqlclient.so.4: open failed: No such file or directory

µ±Ö´ÐÐËüÃÇʱ£¬Õâ¸öÎÊÌâ¿ÉÓÃÏÂÁз½·¨Ö®Ò»±ÜÃ⣺

Èç¹ûÄãÕýÔÚʹÓà Fujitsu ±àÒëÆ÷(fcc / FCC)£¬±àÒëMySQLÄ㽫ÓÐһЩÎÊÌ⣬ÒòΪ Linux Í·ÎļþÃæÏògcc¡£

ÏÂÁÐconfigureÐÐÓ¦¸ÃÓëfcc/FCC¹¤×÷£º

CC=fcc CFLAGS="-O -K fast -K lib -K omitfp -Kpreex -D_GNU_SOURCE -DCONST=const \
-DNO_STRTOLL_PROTO" CXX=FCC CXXFLAGS="-O -K fast -K lib  -K omitfp \
-K preex --no_exceptions --no_rtti -D_GNU_SOURCE -DCONST=const \
-Dalloca=__builtin_alloca -DNO_STRTOLL_PROTO '-D_EXTERN_INLINE=static __inline'" \
./configure --prefix=/usr/local/mysql --enable-assembler \
--with-mysqld-ldflags=-all-static --disable-shared --with-low-memory

4.11.5.1 Linux-x86 ×¢ÒâÊÂÏî

MySQLÒªÇólibc°æ±¾ 5.4.12 »ò¸üУ¬ÒÑÖª¿É¹¤×÷ÔÚlibc 5.4.46¡£glibc°æ±¾2.0.6ºÍÒÔºó°æ±¾Ó¦¸ÃÒ²¹¤×÷¡£Ê¹ÓÃRedHatµÄglibc RPMÓÐһЩÎÊÌ⣬ËùÒÔÈç¹ûÄãÓÐÎÊÌ⣬¼ì²éÊÇ·ñÓÐÈκθüУ¡glibc2.0.7-19ºÍ2.0.7-29 RPMÒÑÖª¿ÉÒÔ¹¤×÷¡£

ÔÚһЩ¸üÀ쵀 Linux ·Ö·¢ÉÏ£¬configure¿ÉÄܲúÉúÏóÕâÑùµÄÒ»¸ö´íÎó£º

Syntax error in sched.h. Change _P to __P in the /usr/include/sched.h file.
See the Installation chapter in the Reference Manual.

°´ÕÕ´íÎóÏûÏ¢Ëù˵µÄÈ¥×ö£¬²¢ÇÒ¸øÖ»ÓÐÒ»ÌõÏ»®ÏßµÄ_PºêÔö¼ÓÒ»¸ö¶îÍâÏ»®Ïß ('__P'), È»ºóÔÙÊÔÒ»ÊÔ¡£

ÔÚ±àÒëʱ£¬Äã¿ÉÄܵõ½Ò»Ð©¾¯¸æ£»ÏÔʾÔÚÏÂÃæµÄÄÇЩ¿ÉÒÔ±»ºöÂÔ£º

mysqld.cc -o objs-thread/mysqld.o
mysqld.cc: In function `void init_signals()':
mysqld.cc:315: warning: assignment of negative value `-1' to `long unsigned int'
mysqld.cc: In function `void * signal_hand(void *)':
mysqld.cc:346: warning: assignment of negative value `-1' to `long unsigned int'

ÔÚDebian GNU/LinuxÉÏ£¬Èç¹ûÄãÏëÒªÔÚϵͳÆô¶¯Ê±×Ô¶¯Æô¶¯MySQL£¬×öÏÂÁÐÃüÁ

shell> cp support-files/mysql.server /etc/init.d/mysql.server
shell> /usr/sbin/update-rc.d mysql.server defaults 99

mysql.server¿ÉÒÔÔÚMySQL°²×°Ä¿Â¼µÄ¡°share/mysql¡±Ä¿Â¼ÏÂÃæÕÒµ½, »òÔÚMySQLÔ´´úÂëÊ÷µÄ¡°support-files¡±Ä¿Â¼ÏÂÕÒµ½¡£

Èç¹ûmysqldÔÚËüÆô¶¯Ê±×ÜÊǺËÐÄÇãµ¹(core dump), ÎÊÌâ¿ÉÄÜÊÇÄãÓÐÒ»¸öÀϰ汾µÄ¡°/lib/libc.a¡±£¬ÖØÃüÃûËü£¬È»ºóɾ³ý¡°sql/mysqld¡±²¢ÇÒÖØÐÂmake installÔÙÊÔÒ»ÊÔ¡£Õâ¸öÎÊÌâÔÚһЩ Slackware °²×°Éϱ»±¨¸æÁË¡£ÓÐ×îа汾µÄglibcµÄRedHat 5.0Ò²ÓÐһЩÀàËÆµÄÎÊÌâ¡£¼û4.11.5.2 RedHat 5.0 ×¢ÒâÊÂÏî¡£

Èç¹ûÔÙÁ´½Ómysqldʱ£¬ÄãµÃµ½ÏÂÁдíÎó, ËüÒâζ×ÅÄãµÄ¡°libg++.a¡±Ã»ÓÐÕýÈ·°²×°£º

/usr/lib/libc.a(putc.o): In function `_IO_putc':
putc.o(.text+0x0): multiple definition of `_IO_putc'

ÏñÕâÑùÔËÐÐconfigure£¬ÄãÄܱÜÃâʹÓá°libg++.a¡±£º

shell> CXX=gcc ./configure

4.11.5.2 RedHat 5.0 ×¢ÒâÊÂÏî

Èç¹ûÄãÔÚRedHatÉÏÓÐMySQLµÄÈκÎÎÊÌ⣬ÄãÓ¦¸Ã¿ªÊ¼Éý¼¶glibcµ½×îпÉÄܵİ汾£¡

Èç¹ûÄã°²×°ËùÓеĹٷ½RedHat²¹¶¡(°üÀ¨glibc-2.0.7-19ºÍglibc-devel-2.0.7-19)£¬MySQLµÄ¶þ½øÖÆ´úÂëºÍÔ´´úÂë·Ö·¢ÔËÐÐÓ¦¸ÃûÓÐÈκÎÂé·³£¡

ÒòΪÔÚglibc2.0.5ÀïÃæÓйØÈçºÎÊÍ·Åpthread_key_create±äÁ¿ÓÐÒ»¸ö´íÎ󣬸üÐÂÊÇÐèÒªµÄ¡£ÓÃglibc2.0.5£¬Äã±ØÐëʹÓÃÒ»¸ö¾²Ì¬µØÁ´½ÓµÄMySQL¶þ½øÖÆ·Ö·¢¡£Èç¹ûÄãÏëÒª´ÓÔ´´úÂë±àÒ룬Äã±ØÐë°²×°À´×ÔÓÚhttp://www.mysql.com/Downloads/Linux µÄLinuxThreadsÐÞÕý°æ±¾»òÉý¼¶ÄãµÄglibc¡£

Èç¹ûÄãÓÐÒ»¸ö²»ÕýÈ·µÄglibc»òLinuxThreads°æ±¾£¬Æä½á¹ûÊÇmysqldÔÚÿ¸öÁ¬½ÓÒÔºó±ÀÀ£¡£ÀýÈ磬mysqladmin versionÍê³Éºó£¬mysqld½«±ÀÀ££¡

ÁíÒ»¸ö²»ÕýÈ·µÄ¿âµÄÖ¢×´Êǵ±mysqldÆô¶¯Ê±£¬ÂíÉϱÀÀ£¡£ÔÚһЩLinuxϵͳÉÏ£¬Õâ¸öÎÊÌâ¿ÉÒÔͨ¹ýÕâÑùµÄÅäÖÃÀ´ÐÞÕý£º

shell> ./configure -- with-mysqld-ldflags=-all-static

ÔÚRedhat 5.0ÉÏ£¬ÈÝÒ׵ķ½·¨Êǰ²×°glibc2.0.7-19 RPM²¢ÔËÐÐconfigure --with-mysqld-ldflags=-all-staticÑ¡Ïî¡£

¶ÔÓÚglibc2.0.7µÄÔ´´úÂë·Ö·¢£¬ÈÝÒ×ÔËÓò¢±»MySQL²âÊÔµÄÒ»¸ö²¹¶¡¿ÉÒÔÔÚÏÂÃæÕÒµ½£º

http://www.mysql.com/Download/Linux/glibc-2.0.7-total-patch.tar.gz

Èç¹ûµ±Äã¹¹ÔìMySQLʱ£¬ÄãÓÐÀàËÆÓÚÕâЩ±ÀÀ£µÄ¾­Àú, Äã×ÜÄÜÏÂÔØµ½×îеÄMySQL¶þ½øÖư汾¡£ÕâÊǾ²Ì¬Á´½ÓµÄÒÔ±ÜÃâ¿â³åÍ»¶øÇÒÓ¦¸ÃÔÚËùÓеÄLinuxϵͳÉϹ¤×÷£¡

MySQL×Ô´øÒ»¸öÄÚ²¿µÄµ÷ÊÔÆ÷¿ÉÒÔÓкܶàÐÅÏ¢²úÉú×Ù¼£Îļþ£¬Äܱ»ÓÃÀ´·¢ÏÖ²¢½â¾ö´óÁ¿²»Í¬µÄÎÊÌâ¡£¼ûG.1 µ÷ÊÔÒ»¸öMySQL·þÎñÆ÷¡£

4.11.5.3 RedHat 5.1 ×¢ÒâÊÂÏî

RedHat 5.1µÄglibc(glibc2.0.7-13 )ÓÐÒ»¸öÄÚ´æÈ±ÏÝ£¬ËùÒÔÒªµÃµ½Ò»¸öÎȶ¨µÄMySQL°æ±¾£¬Äã±ØÐëÉý¼¶glibcµ½2.0.7-19¡¢½µ¼¶glibc»òʹÓÃÒ»¸ömysqldµÄ¶þ½øÖư汾¡£Èç¹ûÄã²»ÕâÑù×ö£¬Ä㽫Åöµ½ÄÚ´æÎÊÌâ(´æ´¢Æ÷Òç³ö£¬µÈµÈ, µÈµÈ)¡£ÔÚÕâÖÖÇé¿öÏ£¬×î³£¼ûµÄ´íÎóÊÇ£º

Can't create a new thread (errno 11). If you are not out of available
memory, you can consult the manual for any possible OS dependent bug

ÔÚÄãÉý¼¶µ½glibc2.0.7-19ÒÔºó£¬Äã¿ÉÒÔÓö¯Ì¬Á´½Ó(ȱʡ)ÅäÖÃMySQL£¬µ«ÊÇÔÚÄã´ÓÔ´´úÂë°²×°ÁËglibc 2.0.7-19֮ǰ£¬Äã²»ÄÜÔËÐÐconfigure --with-mysqld-ldflags=-all-staticÑ¡Ï

Äã¿ÉÒÔÓÃrpm -q glibc¼ì²éÄãÓÐglibcÄĸö°æ±¾¡£

4.11.5.4 Linux-SPARC ×¢ÒâÊÂÏî

ÔÚһЩʵÏÖÖУ¬readdir_r()±»ÆÆ»µÁË¡£ÆäÖ¢×´ÊÇSHOW DATABASES×ÜÊÇ·µ»ØÒ»¸ö¿Õ¼¯ºÏ¡£Õâ¿ÉÒÔͨ¹ýÔÚ±àÒëǰ´Ó¡°config.h¡±ÖÐɾ³ýHAVE_READDIR_R½øÐиüÕý¡£

ÓÐЩÎÊÌ⽫ÐèÒª¸øÄãµÄLinux°²×°´ò²¹¶¡¡£²¹¶¡¿ÉÔÚhttp://www.mysql.com/patches/Linux-sparc-2.0.30.diffÕÒµ½£¬Õâ¸ö²¹¶¡ÊÇÕë¶ÔLinux·Ö·¢¡°sparclinux-2.0.30.tar.gz¡±£¬ËüÃǿɴÓvger.rutgers.edu£¨Ò»¸ö´ÓÀ´Ã»ÓÐÓë¹Ù·½µÄ2.0.30°æºÏ²¢µÄ°æ±¾)µÃµ½¡£ÄãÒ²±ØÐë°²×°LinuxThreads 0.6»ò¸üС£

¸Ðлjacques@solucorp.qc.caÌṩÕâ¸öÐÅÏ¢¡£

4.11.5.5 Linux-Alpha×¢ÒâÊÂÏî

ÔÚLinux-AlphaÉϵĴóÎÊÌâÈÔÈ»ÊÇÔÚÕâ¸öƽ̨ÉϵÄglibcµÄÏß³ÌÓÐһЩÎÊÌâ¡£ÄãÓ¦¸Ã´ÓµÃµ½ÄãÄÜÕÒµ½µÄ×îÐÂglibc°æ±¾¿ªÊ¼¡£

×¢Ò⣺ÔÚÄãÔËÐÐÈκÎʹÓÃÏ̵߳ijÌÐò֮ǰ(Ïómysqld¡¢thr_alarm»òthr_lock)£¬ÄãÓ¦¸ÃÔö¼õ¹²Ïí´æ´¢Æ÷µÄÏÞÖÆ(ÓÃulimit)¡£Èç¹ûÄãÍü¼ÇÕâÑù×ö£¬MySQL»ù×¼²âÊÔÒÑÖªÊÇʧ°ÜµÄ£¡

ÓÃÏÂÁÐÃüÁîÅäÖÃMySQL£º

shell> CC=gcc CCFLAGS="-Dalpha_linux_port" \
       CXX=gcc CXXFLAGS="-O3 -Dalpha_linux_port -felide-constructors -fno-exceptions -fno-rtti" \
       ./configure --prefix=/usr/local/mysql

ÊÔÊÔ±àÒëmysys/thr_lockºÍmysys/thr_alarm£¬²âÊÔÕâЩ³ÌÐòµÄÔËÐУ¡£¨²»ÓòÎÊýµ÷ÓÃÿһ¸ö£¬Èç¹ûÒ»ÇÐÕý³££¬Ã¿¸öÓ¦¸ÃÒÔtest_succeeded½áÊø¡££©

ÔÚ°²×°MySQLÒÔºó£¬ÔÚsafe_mysqldÀïÈ¥µôulimitÃüÁîµÄ×¢ÊÍ£¬²¢¼ÓÈëÑ¡ÏîÒÔÔö¼Ó¹²Ïí´æ´¢Æ÷¡£

×¢Òâ¶ÔMySQLÀ´Ëµ£¬Linux-AlphaÈÔÈ»ÊÇÒ»¸öalphaÖÊÁ¿µÄƽ̨¡£ÓÃ×îÐÂglibc£¬ÄãÓÐÒ»¸öÈÃËü¹¤×÷µÄºÜºÃ»ú»á¡£

Èç¹ûÄãÓÃÐźŷ½ÃæµÄÎÊÌâ(MySQL³öÈËÒâÁϵØÔڸ߸ºÔØÏÂËÀµô)£¬Äã¿ÉÄÜÕÒµ½ÁËÒ»¸öÏ̺߳ÍÐźÅÓйصÄOS´íÎó¡£ÔÚÕâÖÖÇé¿öÏ£¬Äã¿ÉÒÔ¸æËßMySQLÈçÏÂÅäÖÃÒÔ²»Ê¹ÓÃÐźţº

shell> CFLAGS=-DDONT_USE_THR_ALARM \
       CXXFLAGS=-DDONT_USE_THR_ALARM \
       ./configure ...

Õâ²»Ó°ÏìMySQLÐÔÄÜ£¬µ«ÊÇÓи±×÷Ó㬾ÍÊÇÄã²»ÄÜÓÃmysqladmin kill»òmysqladmin shutdownɱËÀÔÚÒ»¸öÁ¬½ÓÉÏ¡°Ë¯Ãß¡±µÄ¿Í»§¡£Ïà·´£¬µ±¿Í»§·¢³öÏÂÒ»¸öÃüÁîʱ£¬Ëü½«ËÀµô¡£

4.11.5.6 MkLinux ×¢Òâ

MySQLÓ¦¸ÃÄܹ¤×÷ÔÚÓÐ×îÐÂglibc°üµÄMkLinuxÉÏ(ÓÃglibc2.0.7²âÊÔ¹ý)¡£

4.11.5.7 Qube2 Linux×¢ÒâÊÂÏî

ΪÁËÈÃMySQLÔÚQube2ÉϹ¤×÷£¬(Linux Mips)£¬ÄãÐèÒª×îеÄglibc¿â(glibc-2.0.7-29C2ÒÑÖª¿É¹¤×÷)¡£ÄãÒ²±ØÐëʹÓÃegcsC++±àÒëÆ÷(egcs-1.0.2-9»ò¸üÐÂ)¡£

4.11.6 Alpha-DEC-Unix ×¢ÒâÊÂÏî

µ±ÔÚDigital UNIXϱàÒëÏ̳߳ÌÐòʱ£¬ÎĵµÍƼö¶ÔÓÚccºÍcxxʹÓÃ-pthreadÑ¡Ïî¶øÇÒ¿âÎļþÓÃ-lmach -lexc£¨³ýÁË-lpthreadÍâ)¡£ÄãÓ¦¸ÃÏóÏÂÃæÕâÑùÔËÐÐconfigure£º

shell> CC="cc -pthread" CXX="cxx -pthread -O" \
       ./configure --with-named-thread-libs="-lpthread -lmach -lexc -lc"

µ±±àÒëmysqldʱ£¬Äã¿ÉÄÜ¿´¼ûÕâÑùһЩ¾¯¸æ£º

mysqld.cc: In function void handle_connections()':
mysqld.cc:626: passing long unsigned int *' as argument 3 of
accept(int,sockadddr *, int *)'

Äã¿ÉÒÔ°²È«µØºöÂÔÕâЩ¾¯¸æ£¬ËûÃǵķ¢ÉúÊÇÒòΪconfigureÖ»Äܼì²â³ö´íÎ󣬶ø²»ÊǾ¯¸æ¡£

Èç¹ûÄãÖ±½Ó´ÓÃüÁîÐÐÆô¶¯·þÎñÆ÷£¬µ±ÄãÍ˳öʱ£¬Äã¿ÉÄÜÓÐËÀµôµÄÎÊÌâ¡££¨µ±ÄãÍ˳öʱ£¬ÄãµÄÖØÒª½ø³ÌÊÕµ½Ò»¸öSIGHUPÐźÅ)£¬Èç¹ûÈç´Ë£¬ÊÔ×ÅÏóÕâÑùÆô¶¯·þÎñÆ÷£º

shell> nohup  mysqld [options] &

nohupʹµÃ¸úËæËüµÄÃüÁîºöÊÓ´ÓÖÕ¶Ë·¢À´µÄÈκÎSIGHUPÐźÅÁË¡£ÁíÍ⣬ͨ¹ýÔËÐÐsafe_mysqldÆô¶¯·þÎñÆ÷£¬ËüΪÄãʹÓÃnohupµ÷ÓÃmysqld¡£

4.11.7 Alpha-DEC-OSF1×¢ÒâÊÂÏî

Èç¹ûÄãÓбàÒëÎÊÌâ²¢°²×°ÁËDECCCºÍgcc£¬³¢ÊÔÕâÑùÔËÐÐconfigure£º

shell> CC=cc CFLAGS=-O CXX=gcc CXXFLAGS=-O3 \
       ./configure --prefix=/usr/local/mysql

Èç¹ûÄãµÃµ½¡°c_asm.h¡±ÎļþµÄÎÊÌ⣬Äã¿ÉÒÔ´´½¨²¢Ê¹ÓÃÒ»¸ö¡°ÑÆ(dummy)¡±¡°c_asm.h¡±Îļþ£º

shell> touch include/c_asm.h
shell> CC=gcc CFLAGS=-I./include \
       CXX=gcc CXXFLAGS=-O3 \
       ./configure --prefix=/usr/local/mysql

ÔÚOSF1 V4.0DºÍ±àÒëÆ÷"DEC C V5.6-071 on Digital UNIX V4.0 (Rev. 878)" ÉÏ£¬±àÒëÆ÷ÓÐÁËÒ»Ð©Ææ¹ÖµÄÐÐΪ(䶨Òåasm±êÖ¾)¡£/bin/ldºÃÏóÒ²±»ÆÆ»µ(µ±Á´½Ómysqldʱ£¬·¢Éú_exit undefinedÎÊÌâ)¡£ÔÚÕâ¸öϵͳÉÏ£¬´ÓOSF 4.0CµÄ°æ±¾Ìæ»»ÁË/bin/ldºó£¬ÎÒÃÇÉè·¨ÓÃÏÂÁÐconfigureÃüÁîÐбàÒëMySQL£¬£º

shell> CC=gcc CXX=gcc CXXFLAGS=-O3 ./configure --prefix=/usr/local/mysql 

ÓÃDigital±àÒëÆ÷¡°C++ V6.1-029¡±£¬ÏÂÁÐÃüÁîÓ¦¸Ã¹¤×÷£º

CC=cc -pthread
CFLAGS=-O4 -ansi_alias -ansi_args -fast -inline speed -speculate all -arch host
CXX=cxx -pthread
CXXFLAGS=-O4 -ansi_alias -ansi_args -fast -inline speed -speculate all -arch host
export CC CFLAGS CXX CXXFLAGS
./configure --prefix=/usr/mysql/mysql --with-low-memory --enable-large-files \
--with-mysqld-ldflags=-all-static --disable-shared --with-named-thread-libs="-lmach -lexc -lc"

ÔÚOSF1µÄijЩ°æ±¾ÖУ¬alloca()º¯Êý±»ÆÆ»µ£¬Í¨¹ýɾ³ý¶¨Òå'HAVE_ALLOCA'µÄ¡°config.h¡±µÄÐиüÕýËü¡£

alloca()º¯ÊýÒ²¿ÉÄÜÔÚ/usr/include/alloca.hÀïÃæÓÐÒ»¸ö²»ÕýÈ·µÄÔ­ÐÍ£¬Ô´Óڴ˵ľ¯¸æ¿ÉÒÔºöÂÔ¡£

configure½«×Ô¶¯µØÊ¹ÓÃÏÂÁÐÏ߳̿⣺ --with-named-thread-libs="-lpthread -lmach -lexc -lc"¡£

µ±Ê¹ÓÃgccʱ£¬ÄãÒ²¿ÉÒÔÊÔÊÔÕâÑùÔËÐÐconfigure£º

shell> CFLAGS=-D_PTHREAD_USE_D4  CXX=gcc  CXXFLAGS=-O3  ./configure ¡­¡­

Èç¹ûÄãµÄÐźÅÓÐÎÊÌâ(MySQL³öÈËÒâÁϵØÔڸ߸ºÔØÏÂËÀµô)£¬Äã¿ÉÄÜÕÒµ½ÁËÒ»¸öÏ̺߳ÍÐźÅÓйصÄOS´íÎó¡£ÔÚÕâÖÖÇé¿öÏ£¬Äã¿ÉÒÔ¸æËßMySQLÈçÏÂÅäÖÃÒÔ²»Ê¹ÓÃÐźţº

shell> CFLAGS=-DDONT_USE_THR_ALARM \
       CXXFLAGS=-DDONT_USE_THR_ALARM \
       ./configure ...

Õâ²»Ó°ÏìMySQLÐÔÄÜ£¬µ«ÊÇÓиºÃæÐ§Ó¦£¬¾ÍÊÇÄã²»ÄÜÓÃmysqladmin kill»òmysqladmin shutdownɱËÀÔÚÒ»¸öÁ¬½ÓÉÏ¡°Ë¯Ãß¡±µÄ¿Í»§¡£Ïà·´£¬µ±¿Í»§·¢³öÏÂÒ»¸öÃüÁîʱ£¬Ëü½«ËÀµô¡£

4.11.8 SGI-Irix ×¢ÒâÊÂÏî

Äã¿ÉÄÜÐèÒªÔÚÔËÐÐconfigureºóÇÒÔÚ±àÒëǰȥµôÔÚ¡°config.h¡±ÀïÃæÒ»Ð©¶«Î÷µÄ¶¨Òå(underfine)¡£

ÔÚһЩIrixʵÏÖÖУ¬alloca()º¯Êý±»ÆÆ»µ¡£Èç¹ûmysqld·þÎñÆ÷ËÀÓÚһЩSELECTÓï¾ä£¬°Ñ¡°config.h¡±¶¨ÒåHAVE_ALLOCºÍHAVE_ALLOCA_HµÄÐÐɾ³ý¼´¿É¡£Èç¹ûmysqladmin create²»¹¤×÷£¬°Ñ¡°config.h¡±¶¨ÒåHAVE_READDIR_RµÄÐÐɾ³ý£¬ÄãÒ²¿ÉÄܱØÐëɾ³ýHAVE_TERM_HÐС£

SGIÍÆ¼öÄ㽫±¾Ò³ÉϵÄËùÓв¹¶¡×÷Ϊһ¸öÕûÌåÀ´°²×°£ºhttp://support.sgi.com/surfzone/patches/patchset/6.2_indigo.rps.html

×îСµØ£¬ÄãÓ¦¸Ã°²×°×îеĺËÐľí(rollup)¡¢×îеÄrld¾íºÍ×îеÄlibc¾í¡£

ºÜÃ÷È·£¬¶ÔÓÚpthreadsÖ§³Ö£¬ÄãÐèÒª±¾Ò³ÉÏËùÓеÄPOSIX²¹¶¡£º

http://support.sgi.com/surfzone/patches/patchset/6.2_posix.rps.html

Èç¹ûÔÚ±àÒë¡°mysql.cc¡±Ê±£¬ÄãµÃµ½ÀàËÆÓÚÏÂÃæµÄ´íÎó:

"/usr/include/curses.h", line 82: error(1084): invalid combination of type

ÄÇô£¬ÔÚÄãµÄMySQLÔ´´úÂëÊ÷µÄ¶¥¼¶Ä¿Â¼´òÏÂÁÐÃüÁ

shell> extra/replace bool curses_bool < /usr/include/curses.h > include/curses.h
shell> make

Ó¦¸ÃÒ²Óа²ÅÅÉϵÄÎÊÌⱨ¸æ¡£Èç¹ûÖ»ÓÐÒ»¸öÏß³ÌÕýÔÚÔËÐУ¬ÊÂÇé»á±äÂýµÄ¡£Í¨¹ýÆô¶¯ÁíÍâÒ»¸ö¿Í»§À´±ÜÃâËü£¬Õâ¿ÉÒÔµ¼Ö´˺óÆäËûÏ̵߳ÄÖ´ÐÐËÙ¶ÈÔö¼Ó2µ½10±¶¡£ÕâÊÇIrixÏß³ÌÄÑÒÔÀí½âµÄÎÊÌ⣻Äã¿ÉÄܱØÐëÁÙʱ׼±¸ÕÒ³ö½â¾ö·½°¸Ö±µ½ËüÄܱ»ÐÞÕý¡£

Èç¹ûÄãÕýÔÚÓÃgcc±àÒ룬Äã¿ÉÒÔʹÓÃÏÂÁÐconfigureÃüÁ

shell> CC=gcc CXX=gcc CXXFLAGS=-O3 \
       ./configure --prefix=/usr/local/mysql --with-thread-safe-client --with-named-thread-libs=-lpthread

4.11.9 FreeBSD ×¢ÒâÊÂÏî

¶ÔÓÚÔËÐÐMySQL£¬FreeBSD 3.xÊDZ»ÍƼöµÄ£¬ÒòΪÆäḬ̈߳üÊǸü¼ÓÍêÕû¡£

×îÈÝÒ×Òò´ËÊDZȽÏÊÜϲ»¶µÄ°²×°·½·¨ÊÇʹÓÃmysql·þÎñÕßºÍ mysql¿Í»§µÄÒÆÖ²£¬¿É´Óhttp://www.freebsd.orgµÃµ½¡£

ʹÓÃÕâЩ¸øÄãµÄ¶«Î÷£º

½¨ÒéÔÚFreeBSD 2.x°æÉÏʹÓà MIT-pthreads£¬ÔÚ°æ±¾3ºÍÒÔÉϰ汾ÓÃÔ­ÉúÏ̡߳£ÔÚһЩ2.2.xµÄÒÔºó°æ±¾Ê¹ÓÃÔ­ÉúÏß³ÌÔËÐÐÊÇ¿ÉÄܵ쬵«ÊÇÄã¿ÉÄÜÅöµ½mysqld¹ØµôµÄÎÊÌâ¡£

È·¶¨ÈÃÄãµÄÃû×Ö½âÎö³ÌÐò°²×°ÕýÈ·£¬·ñÔòµ±Á¬½Ómysqldʱ£¬Äã¿ÉÄܻᾭÀú½âÎöÑÓʱ»òʧ°Ü¡£

±£Ö¤ÔÚ¡°/etc/hosts¡±ÎļþÖеÄlocalhostÈë¿ÚÊÇÕýÈ·µÄ(·ñÔòÄãÓëÊý¾Ý¿âÁ¬½Óʱ½«ÓÐÎÊÌâ)¡£¡°/etc/hosts¡±ÎļþÓ¦¸ÃÒÔÒ»ÐпªÊ¼£º

127.0.0.1  localhost  localhost.your.domain

Èç¹ûÄã×¢Òâµ½configureʹÓà MIT-pthreads£¬ÄãÓ¦¸ÃÔĶÁMIT-pthreads×¢ÒâÊÂÏ¼û4.9 MIT-pthreads ×¢ÒâÊÂÏî¡£

Èç¹ûÄã´Ómake installµÃµ½Ò»¸öËü²»ÄÜÕÒµ½¡°/usr/include/pthreads¡±µÄ´íÎó£¬configureûÓмì²â³öÄãÐèÒª MIT-pthreads¡£Í¨¹ýÖ´ÐÐÕâЩÃüÁîÐÞÕýËü£º

shell> rm config.cache
shell> ./configure --with-mit-threads

FreeBSD makeµÄÐÐΪÓëmake GNUÂÔÓв»Í¬¡£Èç¹ûÄãÓÐmakeÏà¹ØÎÊÌ⣬ÄãÓ¦¸Ã°²×°GNU make¡£

FreeBSDÒ²ÒÑÖªÓÐÒ»¸ö·Ç³£µÍµÄȱʡÎļþ¾ä±úÏÞÖÆ¡£¼û18.11 ÎļþûÕÒµ½¡£È¥µôÔÚsafe_mysqldÖеÄulimit -n С½ÚµÄ×¢ÊÍ»òÔÚ/etc/login.confΪmysqldÓû§Ìá¸ßÏÞÖÆ(²¢ÓÃcap_mkdb /etc/login.confÖØ½¨Ëü)£¬Èç¹ûÄ㲻ʹÓÃȱʡ£¬Ò²Òª±£Ö¤ÄãΪ´ËÓû§ÔÚ¿ÚÁîÎļþ(Ó÷¨£ºchpass mysqld-user-name £©¡£

ÄãÓÃSELECT NOW()·µ»ØGMTÐÎʽµÄÖµ¶ø²»ÊÇÄãµÄ±¾µØÊ±¼ä£¬Èç¹ûÓÐÕâÑùµÄÎÊÌ⣬Äã±ØÐëÉ趨TZ»·¾³±äÁ¿ÎªÄãµÄµ±Ç°Ê±ÇøµÄ¡£ÕâÓ¦¸ÃÉèÖ÷þÎñÆ÷ÔËÐеĻ·¾³£¬ÀýÈçÔÚsafe_mysqld»òmysql.serverÀï¡£

ΪÁ˵õ½Ò»¸ö°²È«²¢ÇÒÎȶ¨µÄϵͳ£¬ÄãÓ¦¸ÃÖ»½öʹÓñ»±ê¼ÇΪ-STABLEµÄFreeBSDÄںˡ£

4.11.10 NetBSD ×¢ÒâÊÂÏî

ΪÁËNetBSDÉϱàÒ룬ÄãÐèÒªGNU make£¬·ñÔòµ±makeÊÔͼÔÚC++ÎļþÉÏÔËÐÐlintʱ£¬±àÒ뽫±ÀÀ£¡£

4.11.11 OpenBSD 2.5 ×¢ÒâÊÂÏî

ÔÚOpenBSD 2.5ÉÏ£¬Äã¿ÉÒÔÓÃÏÂÁÐÑ¡Ïî±àÒë´øÔ­ÉúÏ̵߳ÄMySQL£º

CFLAGS=-pthread  CXXFLAGS=-pthread  ./configure -- with-mit-threads=no

4.11.12 BSD/OS ×¢ÒâÊÂÏî

4.11.12.1 BSD/OS 2.x ×¢ÒâÊÂÏî

Èç¹ûÔÚ±àÒëMySQLʱ£¬ÄãµÃµ½ÏÂÁдíÎó, Äã¶ÔÐé´æµÄulimitÖµÊÇÌ«µÍÁË£º

item_func.h: In method `Item_func_ge::Item_func_ge(const Item_func_ge &)':
item_func.h:28: virtual memory exhausted
make[2]: *** [item_func.o] Error 1

ÊÔÊÔʹÓÃulimit -v 80000²¢ÔÙÔËÐÐmake¡£Èç¹ûÕ⻹²»Ðв¢ÇÒÄãÕýÔÚʹÓÃbash£¬ÊÔÊÔ»»µ½csh»òsh£»Ò»Ð©BSDIÓû§±¨¸æÁËÓëbashºÍulimitÓйØÎÊÌâ¡£

Èç¹ûÄãÕýÔÚʹÓÃgcc£¬ÄãÒ²¿ÉÄܱØÐëΪconfigureʹÓÃ--with-low-memory±êÖ¾²ÅÄܱàÒë¡°sql_yacc.cc¡±¡£

ÄãÓÃSELECT NOW()·µ»ØGMTÐÎʽµÄÖµ¶ø²»ÊÇÄãµÄ±¾µØÊ±¼ä£¬Èç¹ûÓÐÕâÑùµÄÎÊÌ⣬Äã±ØÐëÉ趨TZ»·¾³±äÁ¿ÎªÄãµÄµ±Ç°Ê±ÇøµÄ¡£ÕâÓ¦¸ÃΪ·þÎñÆ÷ÔËÐеĻ·¾³ÉèÖã¬ÀýÈçÔÚsafe_mysqld»òmysql.serverÀï¡£

4.11.12.2 BSD/OS 3.x ×¢ÒâÊÂÏî

Éý¼¶µ½BSD/OS 3.1¡£Èç¹ûÄDz»¿ÉÄÜ£¬°²×°BSDI patch M300-038¡£

ÔÚÅäÖÃMySQLʱ£¬Ê¹ÓÃÏÂÁÐÃüÁî:

shell> env CXX=shlicc++ CC=shlicc2 \
       ./configure \
           --prefix=/usr/local/mysql \
           --localstatedir=/var/mysql \
           --without-perl \
           --with-unix-socket-path=/var/mysql/mysql.sock

ÏÂÁÐÒ²ÒÑÖª¿ÉÓãº

shell> env CC=gcc CXX=gcc CXXFLAGS=-O3 \
       ./configure \
           --prefix=/usr/local/mysql \
           --with-unix-socket-path=/var/mysql/mysql.sock

Èç¹ûÄãÔ¸Ò⣬Äã¿ÉÒԸıäĿ¼µØµã£¬»ò²»Ö¸¶¨ÈÎºÎµØµã¶øÊ¹ÓÃȱʡ¡£

Èç¹ûÄãÔÚÖØ¸ºÔÙϵÄÐÔÄÜÓÐÎÊÌ⣬ÊÔÊÔʹÓöÔsafe_mysqldʹÓÃ--skip-thread-priorityÑ¡ÏÕ⽫ÒÔÏàͬÓÅÏȼ¶ÔËÐÐËùÓÐỊ̈߳»ÔÚBSDI 3.1ÉÏ£¬ÕâµÃµ½½ÏºÃµÄÐÔÄÜ(ÖÁÉÙÖ±µ½BSDIÐÞÕýÆäÏ̵߳÷¶È³ÌÐò)¡£

Èç¹ûÄãÔÚ±àÒëʱµÃµ½virtual memory exhausted´íÎó£¬ÊÔÊÔʹÓÃulimit -v 80000²¢ÔÙÔËÐÐmake¡£Èç¹ûÕ⻹²»Ðв¢ÇÒÄãÕýÔÚʹÓÃbash£¬ÊÔÊÔ»»µ½csh»òsh£»Ò»Ð©BSDIÓû§±¨¸æÁËÓëbashºÍulimitÓйØÎÊÌâ¡£

4.11.12.3 BSD/OS 4.x ×¢ÒâÊÂÏî

BSDI 4.xÓÐһЩÏß³ÌÓйصĴíÎó¡£Èç¹ûÄãÏëÒªÔÚÕâÉÏÃæÊ¹ÓÃMySQL£¬ÄãÓ¦¸Ã°²×°ËùÓÐÓëÏß³ÌÏà¹ØµÄ²¹¶¡£¬ÖÁÉÙÓ¦¸Ã°²×°M400-023¡£

4.11.13 SCO ×¢ÒâÊÂÏî

µ±Ç°µÄÒÆÖ²½öÔÚ¡°sco3.2v5.0.4¡±ºÍ¡°sco3.2v5.0.5¡±ÏµÍ³Éϱ»²âÊÔ£¬ÔÚ¡°sco 3.2v4.2¡±Ò»¸öÒÆÖ²Ò²Óкܴó½øÕ¹¡£

´ËʱÔÚOpenServerÉÏÍÆ¼öµÄ±àÒëÆ÷ÊÇgcc 2.95.2£¬ÓÃËüÄãÓ¦¸ÃÄܱàÒëMySQL£º

CC=gcc CXX=gcc ./configure ... (options)
  1. ¶ÔÓÚOpenServer 5.0.X£¬ÄãÐèÒªÔÚSkunkware 95ÉÏʹÓÃGDS(95q4c)£¬ÕâÊDZØÒªµÄ£¬ÒòΪÔÚSkunkware 97ÉϵÄGNU gcc 2.7.2 ûÓÐGNU as¡£ÄãÒ²¿ÉÒÔʹÓÃegcs1.1.2»ò¸üУºhttp://www.egcs.com/¡£Èç¹ûÄãÕýÔÚʹÓÃegcs1.1.2£¬Äã±ØÐëÖ´ÐÐÏÂÁÐÃüÁ
    shell> cp -p /usr/include/pthread/stdtypes.h \
    /usr/local/lib/gcc-lib/i386-pc-sco3.2v5.0.5/egcs-2.91.66/include/pthread/
    
  2. ¶Ô¸Ã²úÆ·ºÍ¿ª·¢ÏµÍ³£¬ÄãÐèÒªGCC 2.5.?µÄÒÆÖ²¡£ËûÃÇÔÚÕâ¸öSCO UNIX°æ±¾ÉÏÊDZØÐèµÄ£¬Äã²»ÄÜֻʹÓÃGCC Devϵͳ¡£
  3. ÄãÓ¦¸ÃµÃµ½ FSU Pthreads °ü²¢ÇÒÊ×ÏȰ²×°Ëü£¬Ëü¿ÉÔÚhttp://www.cs.wustl.edu/~ schmidt/ACE_wrappers/FSU-threads.tar.gzÕÒµ½¡£ÄãÒ²¿ÉÒÔ´Óftp://www.mysql.com/pub/mysql/Downloads/SCO/FSU-threads-3.5c.tar.gzµÃµ½Ò»¸öÔ¤±àÒëµÄ°ü¡£
  4. FSU PthreadsÄÜÓôøtcpipµÄSCO UNIX 4.2±àÒ룬»òOpenServer 3.0»òOpen Desktop 3.0(OS 3.0 ODT 3.0)£¬°²×°´øÓÐʹÓÃÒ»¸öGCC 2.5.X ODTµÄSCO¿ª·¢ÏµÍ³£¬»ò¶ÔOS 3.0Ä㽫ÐèÒªÒ»¸öGCC 2.5.£¿µÄÁ¼ºÃÒÆÖ²¡£ ûÓÐÒ»¸öÁ¼ºÃµÄÒÆÖ²»áÓкܶàÎÊÌâ¡£¶ÔÕâ¸ö²úÆ·µÄÒÆÖ²ÐèÒªSCO UNIX¿ª·¢ÏµÍ³£¬Ã»ÓÐËü£¬ÄãÕýȱÉÙËùÐèµÄ¿âºÍÁ´½ÓÆ÷¡£
  5. ΪÁËÔÚÄãµÄϵͳÉϹ¹ÔìFSU Pthreads£¬×öÏÂÁй¤×÷£º
    1. ÔÚ¡°thread/src¡±Ä¿Â¼ÏÂÔËÐÐ./configure²¢ÇÒÑ¡ÔñSCO OpenServerÑ¡Ïî¡£Õâ¸öÃüÁ±´¡°Makefile.SCO5¡±µ½¡°Makefile¡±¡£
    2. ÔËÐÐmake¡£
    3. ΪÁËÔÚȱʡµÄ¡°/usr/include¡±Ä¿Â¼°²×°£¬×÷ΪrootµÇ¼£¬È»ºócd µ½¡°thread/src¡±Ä¿Â¼£¬²¢ÔËÐÐmake install¡£
  6. ¼ÇµÃÔÚÖÆ×÷MySQLʱҪʹÓÃGNU make¡£
  7. ÔÚOSR 5.0.5ÉÏ£¬ÄãÓ¦¸ÃʹÓÃÏÂÁÐÅäÖÃÃüÁîÐУº
    shell> CC="gcc -DSCO" CXX="gcc -DSCO" ./configure
    
    ÐèÒª-DSCO°ïÖúÅäÖÃÕýÈ·¼ì²âһЩÏ̺߳¯Êý¡£Èç¹ûÄãÍü¼Ç-DSCO£¬ÔÚ±àÒëʱ£¬Ä㽫µÃµ½ÏÂÁдíÎóÏûÏ¢£º 
    my_pthread.c: In function `my_pthread_mutex_init':
    my_pthread.c:374: `pthread_mutexattr_default' undeclared (first use this function)
    
    
  8. Èç¹ûÄã²»ÊÇ×÷ΪrootÆô¶¯safe_mysqld£¬Ä㽫¿ÉÄÜÿ½ø³ÌÖ»ÓÐȱʡµÄ110¸ö´ò¿ªÎļþ¡£mysqld½«ÔÚÈÕÖ¾ÎļþдϹØÓڴ˵Ä×¢½â¡£
  9. ÓÃSCO 3.2 V5.0.5£¬ÄãÓ¦¸ÃʹÓÃÒ»¸öFSU Pthreads°æ±¾3.5c»ò¸üС£ÏÂÁÐconfigureÃüÁîÓ¦¸Ã¹¤×÷£º
    shell> CC="gcc -belf" ./configure --prefix=/usr/local/mysql --disable-shared
    
  10. ÓÃSCO 3.2V4.2£¬ÄãÓ¦¸ÃʹÓÃÒ»¸öFSU Pthreads°æ±¾3.5c»ò¸üС£ÏÂÁÐconfigureÃüÁîÓ¦¸Ã¹¤×÷£º
    shell> CFLAGS="-D_XOPEN_XPG4" CXX=gcc CXXFLAGS="-D_XOPEN_XPG4" \
           ./configure \
               --with-debug --prefix=/usr/local/mysql \
               --with-named-thread-libs="-lgthreads -lsocket -lgen -lgthreads" \
               --with-named-curses-libs="-lcurses"
    

    Äã¿ÉÄܵõ½Ò»Ð©°üÀ¨ÎļþµÄijЩÎÊÌâ¡£ÔÚÕâÖÖÇé¿öÏ£¬ÄãÄÜÔÚftp://www.mysql.com/pub/mysql/Downloads/SCO/SCO-3.2v4.2-includes.tar.gzÕÒµ½ÐµÄSCOÌØ¶¨µÄ°üÀ¨Îļþ¡£ÄãÓ¦¸ÃÔÚÄãµÄMySQLÔ´´úÂëÊ÷µÄ¡°include¡±Ä¿Â¼Ï´ò¿ªÕâ¸öÎļþ¡£

SCO¿ª·¢×¢ÒâÊÂÏ

Èç¹ûÄãÏëÒªÔÚSCOÉϰ²×°DBI£¬Äã±ØÐë±à¼­ÔÚDBI-xxxºÍÿ¸ö×ÓĿ¼Ïµġ°Makefiles¡±£º

OLD:                                  NEW:
CC = cc                               CC = gcc -belf
CCCDLFLAGS = -KPIC -W1,-Bexport       CCCDLFLAGS = -fpic
CCDLFLAGS = -wl,-Bexport              CCDLFLAGS =

LD = ld                               LD = gcc -belf -G -fpic
LDDLFLAGS = -G -L/usr/local/lib       LDDLFLAGS = -L/usr/local/lib
LDFLAGS = -belf -L/usr/local/lib      LDFLAGS = -L/usr/local/lib

LD = ld                               LD = gcc -belf -G -fpic
OPTIMISE = -Od         		      OPTIMISE = -O1

OLD:
CCCFLAGS = -belf -dy -w0 -U M_XENIX -DPERL_SCO5 -I/usr/local/include

NEW:
CCFLAGS = -U M_XENIX -DPERL_SCO5 -I/usr/local/include

ÕâʱÈç¹ûËûÃÇÓÃicc»òcc±àÒ룬Perl¶¯Ì¬×°ÔØÆ÷(dynaloader)½«²»×°ÔØDBIÄ£¿é¡£

µ±ÓÃcc±àÒëʱ£¬Perl¹¤×÷µÃ×îºÃ¡£

4.11.14 SCO Unixware 7.0 ×¢ÒâÊÂÏî

Äã±ØÐëʹÓÃÒ»¸ö×îеÄMySQL°æ±¾£¬ÖÁÉÙÊÇ3.22.13£¬ÒòΪ¸Ã°æ±¾ÔÚUnixwareÏÂÃæ½â¾öÒ»Ð©ÒÆÖ²ÐÔÎÊÌâ¡£

ÔÚUnixWare 7.0.1ÉÏ£¬ÎÒÃÇ¿ÉÓÃÏÂÁÐconfigureµÄÃüÁî±àÒëMySQL£º

shell> CC=cc CXX=CC ./configure --prefix=/usr/local/mysql

4.11.15 IBM-AIX ×¢ÒâÊÂÏî

xlC×Ô¶¯¼ì²â´ÓAutoconf¶ªÊ§£¬µ±Ê¹Óà IBM ±àÒëÆ÷ʱ£¬ÐèÒªÈçÏÂÕâÑùÒ»¸öconfigureÃüÁ

shell> CC="xlc_r -ma -O3 -qstrict -DHAVE_INT_8_16_32" \
CXX="xlC_r -ma -O3 -qstrict -DHAVE_INT_8_16_32" \
./configure

Èç¹ûÄãÕýÔÚʹÓÃegcs±àÒëMySQL£¬Äã±ØÐëʹÓÃ-fno-exceptions±êÖ¾£¬ÒòΪegcsµÃÒì³£´¦Àí²»ÊǶÔḬ̈߳²È«µÄ£¡£¨ÕâÓÃegcs1.1±»²âÊÔ¹ý)¡£ÔÚ AIX ÉÏʹÓÃegcsºÍgcc£¬ÎÒÃÇÍÆ¼öÏÂÁÐconfigureÐУº

shell> CXX=gcc \
       CXXFLAGS="-felide-constructors -fno-exceptions -fno-rtti" \
       ./configure --prefix=/home/monty --with-debug --with-low-memory

Èç¹ûÄãÓÃÐźÅÎÊÌâ(MySQL³öÈËÒâÁϵØÔڸ߸ºÔØÏÂËÀµô)£¬Äã¿ÉÄÜ·¢ÏÖÁËÓëÏ̺߳ÍÐźÅÓйصÄÒ»¸öOS´íÎó¡£ÔÚÕâÖÖÇé¿öÏ£¬Äã¿ÉÒÔÓÃÈçÏÂÅäÖøæËßMySQL²»Ê¹ÓÃÐźţº

shell> CFLAGS=-DDONT_USE_THR_ALARM CXX=gcc \
       CXXFLAGS="-felide-constructors -fno-exceptions -fno-rtti -DDONT_USE_THR_ALARM" \
       ./configure --prefix=/home/monty --with-debug --with-low-memory

Õâ²»Ó°ÏìMySQLÐÔÄÜ£¬µ«ÊÇÓи±×÷Ó㬾ÍÊÇÄã²»ÄÜÓÃmysqladmin kill»òmysqladmin shutdownɱËÀÔÚÒ»¸öÁ¬½ÓÉÏ¡°Ë¯Ãß¡±µÄ¿Í»§¡£Ïà·´£¬µ±¿Í»§·¢³öÏÂÒ»¸öÃüÁîʱ£¬Ëü½«ËÀµô¡£

ÔÚ AIX µÄһЩ°æ±¾ÉÏÓÃlibbind.aÁ´½ÓʹµÃgetservbynameºËÐÄÇãµ¹(core dump)£¬ÕâÊÇAIXµÄÒ»¸öbug²¢ÇÒÓ¦¸Ã±»±¨¸æµ½IBMÁË¡£

4.11.16 HP-UX ×¢ÒâÊÂÏî

ÔÚ HP-UX ÉϱàÒëMySQLʱ£¬ÓÐһЩ¡°Ð¡¡±ÎÊÌâ¡£ÎÒÃÇÍÆ¼öÄúʹÓÃgcc¶ø²»ÊÇHP-UX×Ô¼ºµÄ±àÒëÆ÷£¬ÒòΪgccÉú³É¸üºÃһЩµÄ´úÂ룡

ÎÒÃÇÍÆ¼öÔÚHP-UXÉÏʹÓÃgcc 2.95£¬²»Ê¹Óø߶ÈÓÅ»¯±êÖ¾(ÀàËÆ-O6)£¬ÒòΪÕâÔÚ HP-UX ÉÏ¿ÉÄܲ»°²È«¡£

×¢ÒâMIT-pthreads²»ÄÜÓà HP-UX ±àÒëÆ÷±àÒ룬ÒòΪËü²»ÄܱàÒë.S£¨»ã±àÆ÷)Îļþ¡£

ÏÂÁÐÅäÖÃÐÐÓ¦¸Ã¹¤×÷£º

CFLAGS="-DHPUX -I/opt/dce/include" CXXFLAGS="-DHPUX \
-I/opt/dce/include -felide-constructors -fno-exceptions \
-fno-rtti" CXX=gcc ./configure --with-pthread \
--with-named-thread-libs='-ldce' --prefix=/usr/local/mysql --disable-shared

Èç¹ûÄãÕýÔÚ±àÒëgcc2.95±¾Éí£¬Èç¹ûÄãÏëÒªÓÃMIT-pthreads±àÒëMySQL£¬Äã²»Ó¦¸ÃÓÃDCE¿â(libdce.a»òlibcma.a)Á´½ÓËü¡£Èç¹ûÄã»ìºÏDCEºÍMIT-pthreads°ü£¬Ä㽫µÃµ½Ò»¸öʹµÃÄã²»ÄÜÁ¬½ÓµÄmysqld¡£µ±Äã±àÒëgcc2.95ʱ£¬É¾³ýDCE¿â£¡

4.11.17 MacOS X ×¢ÒâÊÂÏî

˳×ÅMacOS XÒÆÖ²µÄÁ´½Ó¿ÉÒԵõ½ÄÜÈÃMySQLÔØMacOSÉϹ¤×÷µÄÐÅÏ¢£¬¼û1.8 ÓÐÓõÄMySQLÏà¹ØÁ´½Ó¡£

MySQL3.23.7 Ó¦¸Ã°üÀ¨ËùÓбØÒªµÄMacOSXÉÏÅäÖÃËüµÄ²¹¶¡¡£È»¶øÔÚÅäÖÃMySQLǰ£¬Äã±ØÐëÊ×ÏȰ²×°À´×ÔMacOSX µÄMySql·þÎñÆ÷µÄpthread °ü¡£

Äã¿ÉÄÜÒ²ÏëÒª°ÑÒ»¸ö±ðÃû¼Óµ½ÄãµÄshell×ÊÔ´ÎļþÖÐÒÔ±ã´ÓÃüÁîÐзÃÎÊmysqlºÍmysqladmin¡£

alias mysql '/usr/local/mysql/bin/mysql'
alias mysqladmin '/usr/local/mysql/libexec/mysqladmin'

4.12 Win32 ×¢ÒâÊÂÏî

Õâ½ÚÃèÊöÔÚWin32Éϰ²×°ºÍʹÓÃMySQL£¬ÕâÒ²ÔÚMySQL Win32·Ö·¢Ëù´øµÄ¡°readme¡±ÎļþÖÐÃèÊö¡£

4.12.1 ÔÚWin32Éϰ²×°MySQL

Èç¹ûÄãûÓÐÒ»¸ö×¢²áµÄMySQL°æ±¾£¬ÄãÓ¦¸ÃÊ×ÏÈÏÂÔØ¹²ÏíÈí¼þ°æ±¾£¬´Ó£º

MySQL 3.21.29

Èç¹ûÄã×¼±¸´ÓһЩÆäËû³ÌÐòÁ¬½ÓMySQL£¬ÄãÒ²¿ÉÄÜÐèÒªMyODBCÇý¶¯³ÌÐò¡£Äã¿ÉÔÚMySQLÏÂÔØÒ³ÕÒµ½¡£

°²×°ÈκÎÒ»¸ö·Ö·¢£¬ÔÚij¸ö¿ÕĿ¼½âѹËõËü²¢ÇÒÔËÐÐSetup.exe³ÌÐò¡£

ȱʡµØ£¬MySQL-Win32±»ÅäÖð²×°ÔÚ¡°C:\mysql¡±¡£Èç¹ûÄãÏëÒªÔÚÆäËüµØ·½°²×°MySQL£¬ÔÚ¡°C:\mysql¡±°²×°Ëü£¬È»ºó½«°²×°ÒƵ½ÄãÏëÒªµÄµØ·½¡£Èç¹ûÄãÕæµÄÒÆ×ßMySQL£¬Äã±ØÐëͨ¹ýÌṩѡÏî¸ømysqld¸æËßmysqldÄÇÀïµÄËùÓÐÒ»ÇУ¬Ê¹ÓÃC:\mysql\bin\mysqld --helpÏÔʾËùÓеÄÑ¡ÏîÄ¿£¡ÀýÈ磬Èç¹ûÄãÒÆ¶¯MySQL·Ö·¢µ½¡°D:\programs\mysql¡±£¬Äã±ØÐëÓÃD:\programs\mysql\bin\mysqld --basedir D:\programs\mysqlÀ´Æô¶¯mysqld¡£

ÓõǼǵÄMySQL°æ±¾,ÄãÒ²¿ÉÒÔ´´½¨Ò»¸ö¡°C:\my.cnf¡±ÎļþÀ´±£´æÓÃÓÚMySQL·þÎñÆ÷µÄÈκÎȱʡѡÏî¡£¿½±´Îļþ¡°\mysql\my-example.cnf¡±µ½¡°C:\my.cnf¡±²¢Çұ༭ËüÀ´ÊÊÓÃÓÚÄãµÄ°²×°¡£×¢ÒâÄãÓ¦¸ÃÓÃ"/"¶ø²»ÊÇ"\"Ö¸¶¨ËùÓеÄ·¾¶¡£Èç¹ûÄãʹÓá°\¡±£¬ÄãÐèÒªÖ¸¶¨Á½´Î(¡°\\¡±)£¬ÒòΪÔÚMySQLÖС°\¡±ÊÇתÒå×Ö·û£¬¼û4.15.4 Ñ¡ÏîÎļþ¡£

4.12.2 ÔÚWin95/Win98ÉÏÆô¶¯MySQL

MySQLʹÓà TCP/IP °ÑÒ»¸ö¿Í»§Á¬½Óµ½Ò»¸ö·þÎñÆ÷¡££¨Õ⽫ÔÊÐíÔÚÄãµÄÍøÂçÉÏÈκλúÆ÷Á¬½ÓÄãµÄMySQL·þÎñÆ÷)¡£Òò´Ë£¬Äã±ØÐëÔÚÆô¶¯MySQLǰÔÚÄãµÄ»úÆ÷Éϰ²×°TCP/IP£¬Äã¿ÉÒÔÔÚÄãµÄWindows CDROMÉÏÕÒµ½TCP/IP ¡£

×¢Ò⣺Èç¹ûÄãÕýÔÚʹÓÃÒ»¸ö¾ÉµÄWin95°æ±¾(ÀýÈçOSR2)£¬ºÜÓпÉÄÜÄãÓÐÒ»¸öÀϵÄWinsock°ü£¡MySQLÐèÒªWinsock 2£¡Äã¿É´Ó΢ÈíµÃµ½×îеÄWinsock¡£Win98ÓÐеÄWinsock 2¿â×÷Ϊȱʡ£¬ÕâÑùÉÏÊö²»ÊÊÓÃÓÚWin98¡£

ÄãÄÜʹÓÃ2¸ö²»Í¬µÄMySQL·þÎñÆ÷£º

mysqld ÓÃÍêÕûµ÷ÊÔºÍ×Ô¶¯´æ´¢Æ÷·ÖÅä¼ì²é±àÒë
mysqld-opt ¶ÔPentium ´¦ÀíÆ÷ÓÅ»¯¡£

ÉÏÃæÁ½¸öÓ¦¸ÃÔÚÈκΠ> = i386µÄIntel´¦ÀíÆ÷ÉϹ¤×÷  ¡£

ΪÁËÆô¶¯mysqld·þÎñÆ÷£¬ÄãÓ¦¸ÃÆô¶¯Ò»¸öMSDOS´°¿Ú²¢¼üÈ룺

C:\mysql\bin\mysqld

Õ⽫ÔÚÒ»¸öûÓд°¿ÚµÄ±³¾°Æô¶¯mysqld¡£

Äã¿ÉÒÔÕâÑùɱËÀMySQL·þÎñÆ÷£¬Ö´ÐУº

C:\mysql\bin\mysqladmin -u root shutdown

×¢ÒâWin95/Win98²»Ö§³ÖÃüÃû¹ÜµÀµÄ´´½¨¡£ÔÚWin95/Win98ÉÏ£¬ÄãÖ»ÄÜʹÓÃÃüÃû¹ÜµÀÁ¬½ÓÔËÐÐÔÚÒ»¸öNT·þÎñÆ÷ÉϵÄÔ¶³ÌMySQL¡£

4.12.3 ÔÚNTÉÏÆô¶¯MySQL

Win95/Win98С½ÚÒ²ÊÊÓÃÓÚÔÚNTÉϵÄMySQL£¬ÓÐÏÂÁвî±ð£º

ΪÁËÊÇMySQLÓÃTCP/IP¹¤×÷£¬Äã±ØÐë°²×°·þÎñ°ü3(service pack 3)(»ò¸üÐÂ)£¡

¶ÔÓÚNT£¬·þÎñÆ÷Ãû×ÖÊÇmysqld-nt¡£Í¨³£ÄãÓ¦¸ÃÔÚ NT Éϰ²×°MySQL×÷ΪһÖÖ·þÎñ£º

C:\mysql\bin\mysqld-nt --install

£¨Äã¿ÉÒÔÔÚ NT ÉÏʹÓÃmysqld»òmysqld-opt·þÎñÆ÷£¬µ«ÊÇÄÇЩ²»ÄÜ×÷ΪһÖÖ·þÎñÆô¶¯»òʹÓÃÃüÃû¹ÜµÀ¡££©

Äã¿ÉÒÔÓÃÏÂÁÐÃüÁîÆô¶¯ºÍÍ£Ö¹MySQL·þÎñ£º

NET START mysql
NET STOP mysql

×¢ÒâÔÚÕâÖÖÇé¿öÏ£¬Äã²»ÄܶÔmysqld-ntʹÓÃÈÎºÎÆäËûÑ¡Ïî!

Èç¹ûÄãÐèÒªÓÃÈκÎÑ¡ÏîÆô¶¯mysqld-nt£¬ÄãÒ²¿ÉÒÔ×÷ΪÔÚNTÉϵÄÒ»¸ö¶ÀÁ¢³ÌÐòÔËÐÐmysqld-nt£¡Èç¹ûÄãÔÚNTÉÏûÓÐÑ¡ÏîÆô¶¯mysqld-nt£¬mysqld-nt³¢ÊÔÆô¶¯×Ô¼º×÷ΪһÖÖÓÐĬÈÏÑ¡ÏîµÄ·þÎñ¡£Èç¹ûÄãÍ£Ö¹ÁËmysqld-nt£¬Äã±ØÐëÓÃNET START mysqlÆô¶¯Ëü¡£

·þÎñÓÃMySqlÃû×Ö±»°²×°£¬Ò»µ©°²×°£¬Ëü±ØÐëʹÓ÷þÎñ¿ØÖƹÜÀíÆ÷(SCM)ʵÓóÌÐòÆô¶¯·þÎñ(ÔÚ¿ØÖÆÃæ°åÖÐÕÒµ½)»òʹÓÃNET START MySQLÃüÁî¡£Èç¹ûÐèÒªÈκÎÑ¡ÏÔÚÄãÆô¶¯MySQL·þÎñǰ±ØÐë×÷ΪSCMʵÓóÌÐòµÄ¡°Æô¶¯²ÎÊý¡±Ö¸¶¨ËüÃÇ¡£Ò»µ©ÔËÐУ¬¿ÉʹÓÃmysqladmin»ò´ÓSCMʵÓóÌÐò»òʹÓÃÃüÁîNET STOP MySQLÍ£Ö¹mysqld-nt¡£Èç¹ûÄãʹÓÃSCMÍ£Ö¹mysqld-nt£¬SCMÓÐÒ»Ìõ¹ØÓÚmysqld shutdown normallyÆæ¹ÖµÄÏûÏ¢£¬µ±×÷ΪһÖÖ·þÎñÔËÐÐʱ£¬mysqld-ntûÓпØÖÆÌ¨µÄ´æÈ¡È¨ÏÞ£¬ËùÒÔûÓÐÏûÏ¢¿ÉÒÔ¿´¼û¡£

ÔÚNTÉÏÄã¿ÉÒԵõ½ÏÂÁзþÎñ´íÎóÏûÏ¢£º

Permission Denied £¨È¨Ï޾ܾø£© Òâζ×ÅËü²»ÄÜÕÒµ½mysqld-nt.exe
Cannot Register £¨²»ÄܵǼǣ© Òâζ×Å·¾¶ÊDz»ÕýÈ·µÄ

Èç¹ûÄã×÷ΪһÖÖ·þÎñ°²×°mysqld-ntÓÐÎÊÌ⣬³¢ÊÔÓÃÍêÕûµÄ·¾¶Æô¶¯Ëü£º

C:\mysql\bin\mysqld --install

Èç¹ûÕ⻹²»¹¤×÷£¬ÄãÄÜͨ¹ýÔÚ×¢²á±íÐÞÕý·¾¶Ê¹µÃmysqld-ntÕýÈ·Æô¶¯£¡

Èç¹ûÄã²»Ïë×÷ΪһÖÖ·þÎñÆô¶¯mysqld-nt£¬Äã¿ÉÒÔÈçÏÂÆô¶¯Ëü£º

C:\mysql\bin\mysqld-nt --standalone

»ò

C:\mysql\bin\mysqld-nt --standalone --debug

×îеİ汾ÔÚ¡°C:\mysqld.trace¡±¸øÄãÒ»¸öµ÷ÊÔ×Ù¼£¡£

4.12.4 ÔÚ Win32 ÉÏÔËÐÐ MySQL

MySQLÔÚËùÓÐWin32ƽ̨ÉÏÖ§³ÖTCP/IPºÍNTÉÏÃüÃû¹ÜµÀ¡£Èç¹û¿Í»§°²×°ÁËTCP/IP£¬È±Ê¡ÊǶÔNTÉϵı¾µØÁ¬½ÓʹÓÃÃüÃû¹ÜµÀ¶ø¶ÔËùÓÐÆäËûÇéÐÎʹÓÃTCP/IP£¬Ö÷»úÃûÖ¸¶¨Ê¹ÓÃÄĸöЭÒ飺

Ö÷»úÃû ЭÒé
¿Õ (ûÓУ© ÔÚNTÉÏ£¬Ê×Ïȳ¢ÊÔÃüÃû¹ÜµÀ£»Èç¹ûËü²»¹¤×÷£¬Ê¹ÓÃTCP/IP¡£ÔÚWin95/Win98ÉÏ£¬Ê¹ÓÃTCP/IP¡£
. ÃüÃû¹ÜµÀ
localhost TCP/IPµ½µ±Ç°Ö÷»ú
Ö÷»úÃû TCP/IP

ͨ¹ýÖ¸¶¨ÃüÃû¹ÜµÀ--pipeÑ¡ÏÄã¿ÉÒÔÇ¿ÖÆÒ»¸öMySQL¿Í»§Ê¹ÓÃÃüÃû¹ÜµÀ¡£Ê¹ÓÃ--socketÑ¡ÏîÖ¸¶¨¹ÜµÀµÄÃû×Ö¡£

ͨ¹ýÖ´ÐÐÏÂÁÐÃüÁÄãÄܲâÊÔMySQLÊÇ·ñÕýÔÚ¹¤×÷£º

C:\mysql\bin\mysqlshow
C:\mysql\bin\mysqlshow -u root mysql
C:\mysql\bin\mysqladmin version status proc
C:\mysql\bin\mysql test

Èç¹ûÔÚWin95/Win98ÉÏmysqldºÜÂýµØ»Ø´ðÁ¬½Ó£¬¿ÉÄÜÄãµÄDNSÓÐÎÊÌâ¡£ÔÚÕâÖÖÇé¿öÖÐÏ£¬ÓÃ--skip-name-resolveÆô¶¯mysqld²¢ÇÒÔÚMySQLÊÚȨ±íÖнöʹÓÃlocalhostºÍIPÊý×Ö¡£ÔÚÄãÁ¬½ÓÔËÐÐÔÚNTÉÏÒ»¸ömysqld-ntµÄMySQL·þÎñÆ÷ʱ£¬Ê¹ÓÃ--pipeÖ¸¶¨ÃüÃû¹ÜµÀʹÓõIJÎÊý£¬ÄãÒ²ÄܱܿªDNS£¬¶Ô´ó¶àÊýMySQL¿Í»§ÊÇ¿ÉÐеġ£

ÓÐ2¸ö°æ±¾µÄMySQLÃüÁîÐй¤¾ß£º

mysql ÓÃÔ­ÉúWin32±àÒ룬ËüÌṩºÜÓÐÓÐÏÞµÄÎı¾±à¼­ÄÜÁ¦¡£
mysqlc ÓÃCygnus GNU ±àÒëÆ÷ºÍ¿â±àÒ룬ËüÌṩreadline±à¼­¡£

Èç¹ûÄãÏëʹÓÃmysqlc.exe£¬Äã±ØÐ뿽±´¡°C:\mysql\lib\cygwinb19.dll¡±µ½¡°\windows\system¡±£¨»òÀàËÆµÄµØ·½)¡£

ÔÚWin32ÉÏȱʡµÄȨÏÞ¸øËùÓб¾µØÓû§ÒÔËùÓÐÊý¾Ý¿âµÄÍêȫȨÏÞ¡£ÎªÁËʹMySQL¸ü°²È«£¬ÄãÓ¦¸ÃΪÿ¸öÓû§ÉèÖÿÚÁɾ³ýmysql.userÖÐÓÐHost='localhost'ºÍUser=''µÄÐС£

ÄãÒ²Ó¦¸ÃΪrootÓû§Ôö¼ÓÒ»¸ö¿ÚÁ£¨ÏÂÁÐÀý×Óͨ¹ýɾ³ýÄäÃûÓû§£¬ÔÊÐíÈκÎÈË´æÈ¡¡°²âÊÔ¡±Êý¾Ý¿â£©

C:\mysql\bin\mysql mysql
mysql> DELETE FROM user WHERE Host='localhost' AND User='';
mysql> QUIT
C:\mysql\bin\mysqladmin reload
C:\mysql\bin\mysqladmin -u root password your_password

ÔÚÄãÉèÖÃÁË¿ÚÁîÒÔºó£¬Èç¹ûÄãÏëÒª¹Øµômysqld·þÎñÆ÷, ÄãÄÜʹÓÃÕâ¸öÃüÁî×öµ½£º

mysqladmin -- user=root -- password=your_password  shutdown

Èç¹ûÄãÕýÔÚʹÓÃÔÚwindowsϵÄMySQL¹²ÏíÈí¼þ°æ±¾£¬ÉÏÃæµÄÃüÁÒÔ parse error near 'SET OPTION password'µÄ´íÎó¶øÊ§°Ü£¬ÕâÊÇÒòΪ£¬ÕâÊǹ²ÏíÈí¼þ°æ±¾£¬Ëü»ùÓÚMySQL 3.21£¬Ã»ÓÐSET PASSWORDÃüÁî¡£

¶Ô¹²ÏíÈí¼þ°æ±¾£¬ÄãÄÜÈçÏÂÉèÖÃrootÓû§¿ÚÁ

C:\mysql\bin\mysql mysql
mysql> UPDATE user SET password=PASSWORD('your password') WHERE user='root';
mysql> QUIT
C:\mysql\bin\mysqladmin reload

ÓÐ×¢²áµÄMySQL°æ±¾£¬ÄãÄܺÜÈÝÒ×µØÓÃGRANTºÍREVOKEÃüÁîÔö¼ÓÐÂÓû§ºÍ¸ü¸ÄȨÏÞ£¬¼û7.26 GRANTºÍREVOKE¾ä·¨¡£¶ÔWindows µÄ¹²ÏíÈí¼þ°æ±¾£¬±ØÐëʹÓÃINSERT¡¢UPDATEºÍDELETEÔÚmysqlÊý¾Ý¿âÖеÄÒ»¸ö±íÀ´¹ÜÀíÓû§ºÍËûÃǵÄȨÏÞ£¬¼û6.13 ´æÈ¡¾Ü¾ø£¨Access denied£©µÄ´íÎóÔ­Òò¡£

4.12.5 ÓÃSSH´ÓWin32Á¬½ÓÒ»¸öÔ¶³ÌMySQL

ÕâÊÇÒ»¸ö¹ØÓÚÔõÑùÓÃSSH µÃµ½Ò»¸ö°²È«µÄÁ¬½ÓÔ¶³ÌMySQL·þÎñÆ÷µÄ×¢ÒâÊÂÏî(David Carlson)¡£

¸ã¶¨¡£Ëü¶ÔÒ»¸öÖ±½ÓµÄÒòÌØÍøÁ¬½Ó¹¤×÷µÃºÜºÃ¡£ÎÒÓÐЩÎÊÌ⣬SSHÓëÎÒµÄWin95ÍøÂçºÍWingateÓгåÍ» - µ«ÊÇÄǽ«ÊÇÕÅÌùÔÚÆäËûÈí¼þ¹«Ë¾µÄÓû§×éµÄ»°Ì⣡

4.12.6 MySQL-Win32ÓëUnix MySQL±È½Ï

MySQL- Win32ÏÖÔÚÒѾ­Ö¤Ã÷ÁË×Ô¼ººÜÎȶ¨¡£Õâ¸ö°æ±¾µÃMySQLÓÐÓë¶ÔÓ¦µÄUnix°æ±¾Í¬ÑùµÄÌØÕ÷£¬³ýÁËÏÂÃæ£º

Win95ºÍÏß³Ì
Win95 Ϊÿ¸öÏ̵߳Ĵ´½¨Ëðʧ´óÔ¼200¸ö×Ö½ÚµÄÄÚ´æ¡£Òò´Ë£¬Èç¹ûÄã½øÐÐÐí¶àÁ¬½Ó£¬Äã²»Ó¦¸ÃÔÚWin95ÔËÐÐmysqldºÜ³¤Ê±¼ä£¬ÒòΪMySQLµÄÿ¸öÁ¬½Ó¶¼´´½¨Ò»¸öÐÂỊ̈߳¡WinNTºÍWin98²»ÄÜÈÝÈÌÕâ¸öbug¡£
×èÈûʽ¶Á£¨blocking read£©
MySQLΪÿ¸öÁ¬½ÓʹÓÃÒ»¸ö×èÈûʽ¶ÁÈ¡£¬ÕâÒâζ×Å£º

ÎÒÃǼƻ®ÔÚ²»¾ÃµÄ½«À´ÐÞÕýËü¡£

UDFº¯Êý
ÔÝʱMySQL-Win32²»Ö§³ÖÓû§¿É¶¨Ò庯Êý¡£
DROP DATABASE
Äã²»ÄÜÅׯúÒ»¸öÕýÔÚ±»Ä³Ð©Ïß³ÌʹÓõÄÊý¾Ý¿â¡£
´ÓÈÎÎñ¹ÜÀíÆ÷ɱËÀMySQL
ÔÚWindows95ÉÏ£¬Äã²»ÄÜ´ÓÈÎÎñ¹ÜÀíÆ÷»òÓÃshutdownʵÓóÌÐòɱËÀMySQL¡£Äã±ØÐëÓÃmysqladmin shutdown¹Ø±ÕËü¡£
´óÐ¡Ð´Çø·ÖµÄÃû×Ö
ÎļþÃûÔÚWin32ÉÏÊǺöÂÔ´óСдµÄ£¬Òò´ËWin32ÉϵÄMySQLÊý¾Ý¿âºÍ±íµÄÃû×ÖÒ²ÊǺöÂÔ´óСдµÄ¡£Î¨Ò»µÄÏÞÖÆÊÇÊý¾Ý¿âºÍ±íµÄÃû×Ö±ØÐëÔÚÕû¸öÒ»¸ö¸ø¶¨µÄÓï¾äÖдóСдÊÇÒ»ÑùµÄ£¬ÒòΪËüÓÃmy_tableºÍMY_TABLE¶¼Ö¸Ïòͬһ¸ö±í×Ó£¬ÏÂÁвéѯ½«²»¹¤×÷£º
SELECT * FROM my_table WHERE MY_TABLE.col=1; 
¡° \ ¡±Ä¿Â¼×Ö·û
ÔÚWin95ÉϵÄ·¾¶Ãû×é³ÉÓÉ¡°\¡±×Ö·û·Ö¸ô£¬ËüÔÚMySQLÖÐÒ²ÊÇתÒå×Ö·û¡£Èç¹ûÄãÕýÔÚʹÓÃLOAD DATA INFILE»òSELECT ... INTO OUTFILE£¬Äã±ØÐëÓÃÁ½¸ö¡°\¡±×Ö·û»òʹÓÃUnix·ç¸ñµÄÎļþÃû¡°/¡±×Ö·û£º
LOAD DATA INFILE "C:\\tmp\\skr.txt" INTO TABLE skr;
SELECT * FROM skr INTO OUTFILE 'C:/tmp/skr.txt';
Can't open named pipe´íÎó
Èç¹ûÄãʹÓÃNTÉϵÄMySQL-Win32¹²ÏíÈí¼þ°æ±¾£¬ÓÃ×îеÄmysql¿Í»§£¬Ä㽫µÃµ½ÏÂÁдíÎó£º
error 2017: can't open named pipe to host: . pipe...

ÕâÊÇÒòΪNTÉÏMySQLÕýʽ°æ±¾È±Ê¡µØÊ¹ÓÃÃüÃû¹ÜµÀ¡£ÄãÄÜͨ¹ýΪÐÂMySQL¿Í»§Ê¹ÓÃ--host=localhostÑ¡Ïî»ò´´½¨Ò»¸ö°üº¬ÏÂÁÐÐÅÏ¢µÄÎļþ¡°C:\my.cnf¡±À´±ÜÃâÕâ¸ö´íÎó£º

[client]
host = localhost
Access denied for user´íÎó
ÔÚ·ÃÎÊÔÚͬһ»úÆ÷ÉϵÄÒ»¸öMySQL·þÎñÆ÷ʱ£¬Èç¹ûÄãµÃµ½Access denied for user: 'some-user@unknown' to database 'mysql'µÄ´íÎó£¬ÕâÒâζ×ÅMySQL²»ÄÜÕýÈ·½âÊÍÄãµÄÖ÷»úÃû¡£ÎªÁËÐÞÕýËü£¬ÄãÓ¦¸Ã´´½¨Ò»¸öÎļþ¡°\windows\hosts¡±£¬ÓÐÏÂÁÐÐÅÏ¢£º
127.0.0.1  localhost

¶ÔÓÚ¿ÉÄÜÏëÒª°ïÖúÎÒÃÇ×öºÃWin32°æ±¾µÄÈκÎÈË£¬ÕâÀïÓеÄһЩ¿ª·ÅµÄÎÊÌ⣺

ÆäËûWin32ÌØ¶¨ÎÊÌâÔÚMySQL-Win32·Ö·¢µÄ¡°README¡±ÎļþÖÐÃèÊö¡£

4.13 OS/2 ×¢ÒâÊÂÏî

MySQLʹÓÃÌ«¶àµÄ´ò¿ªÎļþ¡£Òò´Ë£¬ÄãÓ¦¸ÃÔö¼ÓÀàËÆÏÂÃæµÄ¶«Î÷µ½ÄãµÄ¡°CONFIG.SYS¡±Îļþ£º

SET EMXOPT=-c -n -h1024 

Èç¹ûÄã²»ÕâÑù×ö£¬Ä㽫¿ÉÄÜÅöµ½ÏÂÁдíÎó£º

File 'xxxx' not found (Errcode: 24) 

µ±OS/2 Warp 3ÉÏʹÓÃMySQLʱ£¬ÒªÇóFixPack 29»òÒÔÉÏ¡£ÓÃOS/2 Wrap 4£¬ÒªÇóFixPack 4»òÒÔÉÏ¡£ÕâÊÇPthreads¿âµÄÒ»¸öÒªÇó¡£MySQL±ØÐë°²×°ÔÚÖ§³Ö³¤ÎļþÃûµÄÒ»¸ö·ÖÇøÉÏ£¬ÈçHPFS¡¢FAT32µÈµÈ¡£

¡°INSTALL.CMD¡±½Å±¾±ØÐë´ÓOS/2'×Ô¼ºµÄ¡°CMD.EXE¡±ÔËÐв¢ÇÒ²»Äܹ¤×÷ÔÚÌæ´úÆ·Èç¡°4OS2.EXE¡±¡£

¡°scripts/mysql-install-db¡±½Å±¾ÒѾ­±»ÖØÐÂÃüÃûÁË£ºËüÏÖÔÚµ÷Óá°install.cmd¡±²¢ÇÒÊÇÒ»¸ö REXX ÊÖ¼££¬½«°²×°È±Ê¡µÄMySQL°²È«ÅäÖò¢ÎªMySQL´´½¨WorkPlace Shell ͼ±ê¡£

¶¯Ì¬Ä£¿éÖ§³Öͨ¹ý±àÒ뵫ûÓгä·Ö²âÊÔ£¬¶¯Ì¬Ä£¿éÓ¦¸ÃʹÓÃPthreadsÔËÐÐʱ¿Ì¿â±àÒë¡£

gcc -Zdll -Zmt -Zcrtdll=pthrdrtl -I../include -I../regex -I.. \
    -o example udf_example.cc -L../lib -lmysqlclient udf_example.def
mv example.dll example.udf

×¢Ò⣺ÓÉÓÚOS/2µÄÏÞÖÆ£¬UDFÄ£¿éÃû×ֵĴʸɲ»Äܳ¬¹ý8¸ö×Ö·û¡£Ä£¿é±»´æ´¢ÔÚ¡°/mysql2/udf¡±Ä¿Â¼£»safe-mysqld.cmd½Å±¾½«°ÑÕâ¸öĿ¼·ÅÔÚBEGINLIBPATH»·¾³±äÁ¿ÖС£µ±Ê¹ÓÃUDFÄ£¿éʱ£¬Ö¸¶¨µÄÀ©Õ¹Ãû±»ºöÂÔ--Ëü±»¼Ù¶¨Îª¡°.udf¡±¡£ÀýÈ磬ÔÚ UnixÉÏ£¬¹²ÏíÄ£¿é¿ÉÄܱ»ÃüÃûΪ¡°example.so¡±²¢ÇÒÄã¿ÉÒÔÏóÕâÑù´ÓËü×°ÔØº¯Êý£º

CREATE FUNCTION metaphon RETURNS STRING SONAME "example.so";
ÕýÊÇOS/2£¬Ä£¿é½«±»ÃüÃûΪ¡°example.udf¡±£¬µ«ÊÇÄã²»Ö¸¶¨Ä£¿éÀ©Õ¹Ãû£º 
CREATE FUNCTION metaphon RETURNS STRING SONAME "example"; 

4.14 TcX¶þ½øÖÆ´úÂë

×÷ΪһÖÖ·þÎñ£¬TcXÌṩһÌ×MySQLµÄ¶þ½øÖÆ·Ö·¢£¬ËüÔÚTcX»òÔÚ¿Í»§ÓѺõظøÓëÎÒÃÇ·ÃÎÊËûÃÇ»úÆ÷µÄȨÏÞµÄÕ¾µãÉϱ»±àÒë¡£

ÕâЩ·Ö·¢ÓÃscripts/make_binary_distributionÉú³É²¢ÇÒÓÃÏÂÁбàÒëÆ÷ºÍÑ¡ÏîÅäÖãº

SunOS 4.1.4 2 sun4c with gcc 2.7.2.1
CC=gcc CXX=gcc CXXFLAGS=-O3 ./configure --prefix=/usr/local/mysql --disable-shared
SunOS 5.5.1 sun4u with egcs 1.0.3a
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
SunOS 5.6 sun4u with egcs 2.90.27
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
SunOS 5.6 i86pc with gcc 2.8.1
CC=gcc CXX=gcc CXXFLAGS=-O3 ./configure --prefix=/usr/local/mysql --with-low-memory
Linux 2.0.33 i386 with pgcc 2.90.29 (egcs 1.0.3a)
CFLAGS="-O6 -mpentium -mstack-align-double -fomit-frame-pointer" CXX=gcc CXXFLAGS="-O6 -mpentium -mstack-align-double -fomit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local/mysql --enable-assembler --with-mysqld-ldflags=-all-static
SCO 3.2v5.0.4 i386 with gcc 2.7-95q4
CC=gcc CXX=gcc CXXFLAGS=-O3 ./configure --prefix=/usr/local/mysql
AIX 2 4 with gcc 2.7.2.2
CC=gcc CXX=gcc CXXFLAGS=-O3 ./configure --prefix=/usr/local/mysql
OSF1 V4.0 564 alpha with gcc 2.8.1
CC=gcc CFLAGS=-O CXX=gcc CXXFLAGS=-O3 ./configure --prefix=/usr/local/mysql --with-low-memory
Irix 6.3 IP32 with gcc 2.8.0
CC=gcc CXX=gcc CXXFLAGS=-O3 ./configure --prefix=/usr/local/mysql
BSDI BSD/OS 3.1 i386 with gcc 2.7.2.1
CC=gcc CXX=gcc CXXFLAGS=-O ./configure --prefix=/usr/local/mysql
BSDI BSD/OS 2.1 i386 with gcc 2.7.2
CC=gcc CXX=gcc CXXFLAGS=-O3 ./configure --prefix=/usr/local/mysql

ÈκÎÓбÈÉÏÊöÅäÖøüÓŵÄÑ¡ÏîµÄÈË×ÜÊÇÄܰÑËûÃǼĸø¿ª·¢ÕßÓʼþÁбíÖС£

MySQL3.22ÒÔǰµÄRPM·Ö·¢ÊÇÓû§¹±Ï׵ģ¬×Ô3.22¿ªÊ¼£¬Ò»Ð©RPMÊÇTcX Éú³ÉµÄ¡£

4.15 °²×°ºóÆÚµÄÉèÖúͲâÊÔ

Ò»µ©ÄãÒѾ­°²×°ÁËMySQL£¨´ÓÒ»¸ö¶þ½øÖÆ´úÂë»òÔ´´úÂë·Ö·¢)£¬ÄãÐèÒª³õʼ»¯ÊÚȨ±í£¬Æô¶¯·þÎñÆ÷²¢ÇÒ±£Ö¤·þÎñÆ÷ÕýÈ·ÔËÐС£ÄãÒ²¿ÉÒÔÏ£Íû°²ÅÅ·þÎñÆ÷ÔÚÄãµÄϵͳ¿ª»úºÍ¹Ø»úʱ×Ô¶¯µØ±»Æô¶¯ºÍÍ£Ö¹¡£

ͨ³££¬¶Ô´ÓÔ´´úÂë·Ö·¢µÄ°²×°£¬ÄãÏóÕâÑù°²×°ÊÚȨ±í²¢Æô¶¯·þÎñÆ÷£º

shell> ./scripts/mysql_install_db
shell> cd mysql_installation_directory
shell> ./bin/safe_mysqld &

¶Ô¶þ½øÖÆ·Ö·¢£¬ÕâÑù×ö£º

shell> cd mysql_installation_directory
shell> ./bin/mysql_install_db
shell> ./bin/safe_mysqld &

²âÊÔÔÚMySQL·¢ÐеĶ¥¼¶Ä¿Â¼ÊÇ×îÈÝÒ×½øÐеġ£¶Ô¶þ½øÖÆ·Ö·¢£¬ÕâÊÇÄãµÄ°²×°Ä¿Â¼(µäÐ͵ØÀàËÆ¡°/usr/local/mysql¡±)¡£¶ÔÔ´´úÂë·Ö·¢£¬ÕâÊÇÄãµÄMySQLÔ´´úÂëÊ÷µÄÖ÷Ŀ¼¡£

ÔÚ±¾Ð¡½ÚºÍÒÔºóµÄС½ÚÖУ¬ÏÂÁÐÃüÁîÖУ¬BINDIRÊǵ½³ÌÐòÈçmysqladminºÍsafe_mysqld±»°²×°µØµãµÄ·¾¶¡£¶Ô¶þ½øÖÆ·Ö·¢£¬ÊÇÔÚ·Ö·¢Äڵġ°bin¡±Ä¿Â¼¡£¶ÔÔ´´úÂë·Ö·¢£¬BINDIR¿ÉÄÜÊÇ¡°/usr/local/bin¡±£¬³ý·ÇÔÚÄãÔËÐÐconfigureʱָ¶¨ÁËÒ»¸ö¡° /usr/local¡±ÒÔÍâµÄ°²×°Ä¿Â¼¡£EXECDIRÊÇmysqld·þÎñÆ÷°²×°µÄµØµã£¬¶Ô¶þ½øÖÆ·Ö·¢£¬ÕâÓëBINDIRÒ»Ñù¡£¶ÔÔ´´úÂë·Ö·¢£¬EXECDIR¿ÉÄÜÊÇ¡°/usr/local/libexec¡±¡£

²âÊÔÏêϸÔÚÏÂÃæÃèÊö£º

  1. Èç¹û±ØÒª£¬Æô¶¯mysqld·þÎñÆ÷²¢ÇÒ½¨Á¢³õʼMySQLÊÚȨ±í£¬°üº¬¾ö¶¨Óû§ÈçºÎ±»ÔÊÐíÁ¬½Ó·þÎñÆ÷µÄȨÏÞ¡£Õâͨ³£ÓÃmysql_install_db½Å±¾×ö£º
    shell> scripts/mysql_install_db
    

    µäÐ͵أ¬mysql_install_db½öÔÚÄãµÚÒ»´Î°²×°MySQLʱÐèÒªÔËÐУ¬Òò´Ë£¬Èç¹ûÄãÕýÔÚÉý¼¶ÏÖÓеݲװ£¬Äã¿ÉÒÔÌø¹ýÕâÒ»²½¡££¨È»¶ø£¬mysql_install_dbµÄʹÓÃÏ൱°²È«£¬²¢ÇÒ½«²»¸üÐÂÒѾ­´æÔÚµÄÈÎºÎ±í£¬Òò´ËÈç¹ûÄãÊDz»Äܿ϶¨×öʲô£¬Äã×ÜÊÇ¿ÉÒÔÔËÐÐmysql_install_db¡£) mysql_install_dbÔÚmysqlÊý¾Ý¿âÀï´´½¨6¸ö±í(user¡¢db¡¢host¡¢tables_priv¡¢columns_privºÍfunc)£¬³õʼȨÏÞµÄÃèÊöÔÚ6.10 ÉèÖóõʼMySQLȨÏÞ¸ø³ö¡£¼òµ¥µØËµ£¬ÕâЩȨÏÞÔÊÐíMySQL rootÓû§×öÈκÎÊÂÇ飬²¢ÇÒÔÊÐíÈκÎÈË´´½¨Á¢»òʹÓÃÒ»¸öÃû×ÖÒÔ'test'»ò'test_'¿ªÊ¼µÄÊý¾Ý¿â¡£Èç¹ûÄã²»ÉèÖÃȨÏÞ±í£¬µ±ÄãÆô¶¯·þÎñÆ÷ʱ£¬ÏÂÁдíÎó½«ÔÚÈÕÖ¾Îļþ³öÏÖ£º

    mysqld: Can't find file: 'host.frm' 
    

    Èç¹ûÄã²»ÊÇͨ¹ýÃ÷ÏÔµØÖ´ÐÐ./bin/safe_mysqldÀ´Æô¶¯MySQL£¬ÉÏÊö´íÎó¿ÉÄÜÒ²·¢ÉúÔÚMySQL¶þ½øÖÆ´úÂë·Ö·¢£¡Äã¿ÉÄÜÐèÒª×÷ΪrootÔËÐÐmysql_install_db£¬È»¶ø£¬Èç¹ûÄãϲ»¶£¬ Èç¹ûÓû§ÄÜÔÚÊý¾Ý¿âĿ¼¶Á²¢ÇÒдÎļþ£¬Äã¿ÉÒÔ×÷Ϊһ¸ö·ÇÌØÈ¨(·Ç--root)Óû§ÔËÐÐMySQL·þÎñÆ÷¡£×÷Ϊһ¸ö·ÇÌØÈ¨Óû§ÔËÐÐMySQLµÄÖ¸ÁîÔÚ18.8 ÔõÑù×÷Ϊһ¸öÒ»°ãÓû§ÔËÐÐ MySQLÖиø³ö¡£Èç¹ûÄãÓÐmysql_install_dbµÄÎÊÌ⣬¼û4.15.1 ÔËÐÐmysql_install_dbµÄÎÊÌâ¡£ÒòΪmysql_install_dbÔÚMySQL·¢ÐÐÖУ¬»¹ÓÐһЩÆäËû·½·¨ÔËÐÐËü£º

    ¹ØÓÚÕâЩѡÏîµÄ¸ü¶àÐÅÏ¢£¬¼û6.10 ½¨Á¢³õʼMySQLȨÏÞ¡£

  2. ÏóÕâÑùÆô¶¯MySQL·þÎñÆ÷£º
    shell> cd mysql_installation_directory
    shell> bin/safe_mysqld &
    

    Èç¹ûÄãÆô¶¯·þÎñÆ÷µÄÎÊÌ⣬¼û4.15.2 Æô¶¯MySQL·þÎñÆ÷µÄÎÊÌâ.

  3. ʹÓÃmysqladmin֤ʵ·þÎñÆ÷ÕýÔÚÔËÐС£ÏÂÁÐÃüÁîÌṩ¼òµ¥µÄ²âÊÔÀ´¼ì²é·þÎñÆ÷Æô¶¯ºÍÁ¬½ÓµÄÓ¦´ð£º
    shell> BINDIR/mysqladmin version 
    shell> BINDIR/mysqladmin variables
    
    ´Ómysqladmin versionµÄÊä³ö¸ù¾ÝÄãµÄƽ̨ºÍMySQL°æ±¾ÂÔÓв»Í¬£¬µ«ÊÇÓ¦¸ÃÀàËÆÈçÏÂÏÔʾ£º 
    shell> BINDIR/mysqladmin version
    mysqladmin  Ver 6.3 Distrib 3.22.9-beta, for pc-linux-gnu on i686
    TCX Datakonsult AB, by Monty
    
    Server version          3.22.9-beta
    Protocol version        10
    Connection              Localhost via UNIX socket
    TCP port                3306
    UNIX socket             /tmp/mysql.sock
    Uptime:                 16 sec
    
    Running threads: 1  Questions: 20  Reloads: 2  Open tables: 3
    

    ΪÁ˸оõÄãÄÜÓÃBINDIR/mysqladmin×öÆäËûÊÂÇ飬ÓÃ--helpÑ¡Ïîµ÷ÓÃËü¡£

  4. ֤ʵÄãÄܹصô·þÎñÆ÷£º
    shell> BINDIR/mysqladmin -u root shutdown
    
  5. ֤ʵÄãÄÜÖØÆô·þÎñÆ÷¡£Ê¹ÓÃsafe_mysqld»òÖ±½Óµ÷ÓÃmysqld½øÐУ¬ÀýÈ磺
    shell> BINDIR/safe_mysqld --log &
    

    Èç¹ûsafe_mysqldʧ°Ü£¬´ÓMySQL°²×°Ä¿Â¼³¢ÊÔÔËÐÐËü(Èç¹ûÄãÒѾ­²»ÔÚÄÇÀï)¡£Èç¹û»¹²»¹¤×÷£¬¼û4.15.2 Æô¶¯MySQL·þÎñÆ÷µÄÎÊÌâ¡£

  6. ÔËÐÐһЩ¼òµ¥µÄ²âÊÔ֤ʵ·þÎñÆ÷ÕýÔÚ¹¤×÷¡£Êä³öÓ¦¸ÃÀàËÆÓÚÏÂÃæËùÏÔʾµÄ£º
    shell> BINDIR/mysqlshow
    +-----------+
    | Databases |
    +-----------+
    | mysql     |
    +-----------+
    
    shell> BINDIR/mysqlshow mysql
    Database: mysql
    +--------------+
    |    Tables    |
    +--------------+
    | columns_priv |
    | db           |
    | func         |
    | host         |
    | tables_priv  |
    | user         |
    +--------------+
    
    shell> BINDIR/mysql -e "select host,db,user from db" mysql
    +------+--------+------+
    | host | db     | user |
    +------+--------+------+
    | %    | test   |      |
    | %    | test_% |      |
    +------+--------+------+
    

    ÔÚ¡°sql-bench¡±Ä¿Â¼(ÔÚMySQL°²×°Ä¿Â¼ÏÂ)Ï»¹Óлù×¼²âÊÔÌ×¼þ£¬ÄãÄÜÓÃÀ´±È½ÏÔÚ²»Í¬µÄƽ̨ÉÏMySQL±íÏÖÈçºÎ¡£¡° sql-bench/Results¡±Ä¿Â¼°üº¬¶Ô²»Í¬µÄÊý¾Ý¿âºÍƽ̨Ðí¶àÔËÐнá¹û¡£ÎªÁËÔËÐÐËùÓеIJâÊÔ£¬Ö´ÐÐÕâЩÃüÁ

    shell> cd sql-bench
    shell> run-all-tests
    

    Èç¹ûÄãûÓС°sql-bench¡±Ä¿Â¼£¬Äã¿ÉÄÜÔÚ¶Ô¶þ½øÖÆ·Ö·¢Ê¹ÓÃÒ»¸öRPM£¨Ô´´úÂë·Ö·¢µÄRPM°üÀ¨»ù׼Ŀ¼)¡£ÔÚÕâÖÖÇé¿öÏ£¬ÔÚÄãÄÜʹÓÃËüÒÔǰ£¬Äã±ØÐëÊ×ÏȰ²×°»ù×¼Ì×¼þ¡£´ÓMySQL 3.22¿ªÊ¼£¬ÓÐÃûΪ¡°mysql-bench-VERSION-i386.rpm¡±µÄ»ù×¼RPM°ü£¬ËüÃǰüº¬»ù×¼´úÂëºÍÊý¾Ý¡£Èç¹ûÄãÓÐÔ´´úÂë·Ö·¢£¬ÄãÒ²¿ÉÒÔÔÚ¡°tests¡±×ÓĿ¼ÏÂÔËÐвâÊÔ¡£ÀýÈ磬ÔËÐС°auto_increment.tst¡±£¬ÕâÑù×ö£º

    shell> BINDIR/mysql -vvf test < ./tests/auto_increment.tst
    

    ÆÚÍûµÄ½á¹û±»ÏÔʾÔÚ¡° ./tests/auto_increment.res¡±ÎļþÖС£

4.15.1 ÔËÐÐmysql_install_dbµÄÎÊÌâ

Õâ½ÚÁгöÔÚÄãÔËÐÐmysql_install_dbʱ£¬Äã¿ÉÄÜÓö¼ûµÄÎÊÌ⣺

mysql_install_db²»°²×°ÊÚȨ±í
ÔÚÏÔʾÏÂÁÐÏûÏ¢ÒÔºó£¬Äã¿ÉÒÔ·¢ÏÖmysql_install_db²»Äܰ²×°ÊÚȨ±í²¢ÖÕÖ¹£º
starting mysqld daemon with databases from XXXXXX
mysql daemon ended

ÔÚÕâÖÖÇé¿öÏ£¬ÄãÓ¦¸ÃºÜСÐĵؼìÑéÈÕÖ¾Îļþ£¡ÈÕÖ¾ÎļþÓ¦¸ÃλÓÚĿ¼¡°XXXXXX¡±£¬ÓôíÎóÏûÏ¢ÃüÃû£¬²¢ÇÒÓ¦¸ÃÖ¸³öΪʲômysqldûÆô¶¯¡£Èç¹ûÄã²»Àí½â·¢ÉúµÄÊÂÇ飬µ±ÄãʹÓÃmysqlbugÓʼÄÒ»·Ý´íÎ󱨸æÊ±£¬°üº¬ÈÕÖ¾Îļþ£¡¼û2.3 ÔõÑù±¨¸æ´íÎó»òÎÊÌâ¡£

ÒѾ­ÓÐÒ»¸ömysqldÊØ»¤³ÌÐòÔÚÔËÐÐ
ÔÚÕâÖÖÇé¿öÏ£¬Äã¿ÉÄܸù±¾²»±ØÔËÐÐmysql_install_db¡£µ±ÄãµÚÒ»´Î°²×°MySQLʱ£¬Äã±ØÐëÖ»ÔËÐÐmysql_install_dbÒ»´Î¡£
µ±Ò»¸öÊØ»¤½ø³ÌÕýÔÚÔËÐÐʱ£¬°²×°µÚ¶þ¸ömysqldÊØ»¤½ø³Ì²»¹¤×÷
ÕâÖ»ÓÐÔÚµ±ÄãÒѾ­ÓÐÒÑ´æÔÚµÄMySQL°²×°µ«ÊÇÏëÒª°Ñа²×°·ÅÔÚÒ»¸ö²»Í¬µÄµØ·½Ê±²Å»á·¢Éú(ÀýÈ磬ΪÁ˲âÊÔ»òÕßÒ²ÐíÄã¼òµ¥µØÏëҪͬʱÔËÐÐ2¸ö°²×°)¡£Í¨³£µ±ÄãÊÔ×ÅÔËÐеڶþ¸ö·þÎñÆ÷ʱ£¬·¢ÉúµÄÎÊÌâÊÇËüÊÔͼºÍ¾ÉÒ»¸öʹÓÃͬÑùµÄÌ×½Ó×ֺͶ˿ڡ£ÔÚÕâÖÖÇé¿öÏ£¬Ä㽫µÃµ½´íÎóÏûÏ¢£ºCan't start server: Bind on TCP/IP port: Address already in use»òCan't start server : Bind on unix socket...ÄãÄÜÓÃÒ»¸ö²»Í¬µÄÌ×½Ó×ÖºÍ¶Ë¿ÚÆô¶¯ÐµķþÎñÆ÷£¬ÈçÏ£º
shell> MYSQL_UNIX_PORT=/tmp/mysqld-new.sock
shell> MYSQL_TCP_PORT=3307
shell> export MYSQL_UNIX_PORT MYSQL_TCP_PORT
shell> scripts/mysql_install_db
shell> bin/safe_mysqld &

ÔÚÕâÒÔºó£¬ÄãÓ¦¸Ã±à¼­ÄãµÄ·þÎñÆ÷Òýµ¼½Å±¾ÊÖ¼£Óò»Í¬µÄÌ×½Ó×ÖºÍ¶Ë¿ÚÆô¶¯Á½¸öÊØ»¤½ø³Ì¡£ÀýÈ磬ËüÄܵ÷ÓÃsafe_mysqldÁ½´Î£¬µ«ÊǶÔÿ´Îµ÷ÓÃʹÓò»Í¬µÄ--socket¡¢--portºÍ--basedirÑ¡Ïî¡£

ÄãûÓС° /tmp ¡±µÄдȨÏÞ
Èç¹ûÄãûÓÐдȨÏÞÔÚȱʡµØ·½(ÔÚ¡°/tmp¡±Àï)´´½¨Ò»¸öÌ×½Ó×ÖÎļþ£¬»òûÓÐÔÚ¡°/tmp¡±´´½¨ÁÙʱÎļþµÄÐí¿É£¬ÔÚÔËÐÐmysql_install_db»òµ±Æô¶¯»òʹÓÃmysqldʱ£¬Äã½