ºìÁªLinuxÃÅ»§
Linux°ïÖú

MySQL·þÎñά»¤±Ê¼Ç

·¢²¼Ê±¼ä:2006-08-24 12:41:22À´Ô´:ºìÁª×÷Õß:bear10214
ÄÚÈÝÕªÒª£ºÊ¹ÓÃMySQL·þÎñµÄһЩ¾­Ñ飬Ö÷Òª´ÓÒÔϼ¸¸ö·½Ã濼ÂǵÄMySQL·þÎñ¹æ»®Éè¼Æ¡£¶ÔÓڸ߸ºÔØÕ¾µãÀ´ËµPHPºÍMySQLÔËÐÐÔÚÒ»Æ𣨻òÕß˵ÈκÎÓ¦ÓúÍÊý¾Ý¿âÔËÐÐÔÚÒ»ÆðµÄ¹æ»®£©¶¼ÊÇÐÔÄÜ×î´óµÄÆ¿¾±£¬ÕâÑùµÄÉè¼ÆÓÐÈçÈÃÈËÒ»ÊÖ»­Ô²Ò»ÊÖ»­·½£¬ ÕâÑù2¸öÈ˵Ť×÷ЧÂʿ϶¨²»ÈçÈÃÒ»¸öÈËרÃÅ»­Ô²Ò»¸öÈËרÃÅ»­·½Ð§Âʸߣ¬ÈÃÓ¦ÓúÍÊý¾Ý¿â¶¼ÅÜÔÚһ̨¸ßÐÔÄÜ·þÎñÆ÷ÉÏ˵²»¶¨»¹²»ÈçÅÜÔÚ2̨ÆÕͨ·þÎñÆ÷ÉÏ¿ì¡£
¡¡¡¡ÒÔϾÍÊÇÕë¶ÔMySQL×÷ΪרÃŵÄÊý¾Ý¿â·þÎñÆ÷µÄÓÅ»¯½¨Ò飺

¡¡¡¡MySQL·þÎñµÄ°²×°/ÅäÖõÄͨÓÃÐÔ£»
¡¡¡¡ÏµÍ³µÄÉý¼¶ºÍÊý¾ÝǨÒÆ·½±ãÐÔ£»
¡¡¡¡±¸·ÝºÍϵͳ¿ìËÙ»Ö¸´£»
¡¡¡¡Êý¾Ý¿âÓ¦ÓõÄÉè¼ÆÒªµã£»
¡¡¡¡Ò»´ÎÓ¦ÓÃÓÅ»¯ÊµÕ½£»

¡¡¡¡MySQL·þÎñÆ÷µÄ¹æ»®

¡¡¡¡ÎªÁËÒÔºóά»¤£¬Éý¼¶±¸·ÝµÄ·½±ãºÍÊý¾ÝµÄ°²È«ÐÔ£¬×îºÃ½«MySQL³ÌÐòÎļþºÍÊý¾Ý·Ö±ð°²×°ÔÚ¡°²»Í¬µÄÓ²¼þ¡±ÉÏ¡£


¡¡¡¡¡¡¡¡/
¡¡ /
|
/usr<== ²Ù×÷ϵͳ
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡|
¡¡¡¡/home/mysql
<== mysqlÖ÷Ŀ¼£¬ÎªÁË·½±ãÉý¼¶£¬ÕâÖ»ÊÇÒ»¸ö×îа汾Ŀ¼µÄÁ´½Ó Ó²ÅÌ1==>|
/home/mysql-3.23.54/
<== ×îа汾µÄmysql /home/mysqlÁ´½Óµ½ÕâÀï
\
¡¡/home/mysql-old/
¡¡¡¡¡¡¡¡¡¡<== ÒÔÇ°ÔËÐеľɰ汾µÄmysql
¡¡¡¡¡¡¡¡¡¡/
¡¡/data/app_1/
¡¡¡¡¡¡¡¡¡¡¡¡<== Ó¦ÓÃÊý¾ÝºÍÆô¶¯½Å±¾µÈÓ²ÅÌ2==>|
¡¡/data/app_2/
¡¡¡¡¡¡¡¡¡¡\
¡¡/data/app_3/

¡¡¡¡MySQL·þÎñµÄ°²×°ºÍ·þÎñµÄÆô¶¯£º

¡¡¡¡MySQLÒ»°ãʹÓõ±Ç°STABLEµÄ°æ±¾£º

¡¡¡¡¾¡Á¿²»Ê¹ÓÃ--with-charset=Ñ¡ÏÎҸоõwith-charsetÖ»ÔÚ°´×ÖĸÅÅÐòµÄʱºò²ÅÓÐÓã¬ÕâЩѡÏî»á¶ÔÊý¾ÝµÄǨÒÆ´øÀ´ºÜ¶àÂé·³¡£

¡¡¡¡¾¡Á¿²»Ê¹ÓÃinnodb£¬innodbÖ÷ÒªÓÃÓÚÐèÒªÍâ¼ü£¬ÊÂÎñµÈÆóÒµ¼¶Ö§³Ö£¬´ú¼ÛÊÇËٶȱÈMYISAMÓÐÊýÁ¿¼¶µÄϽµ¡£

¡¡¡¡./configure --prefix=/home/mysql --without-innodb
¡¡¡¡make
¡¡¡¡make install[page]
¡¡¡¡·þÎñµÄÆô¶¯ºÍÍ£Ö¹

¡¡¡¡1£®¸´ÖÆȱʡµÄmysql/var/mysqlµ½ /data/app_1/Ŀ¼Ï£¬
¡¡¡¡2£®MySQLDµÄÆô¶¯½Å±¾£ºstart_mysql.sh

¡¡¡¡#!/bin/sh
¡¡¡¡rundir=`dirname "$0"`
¡¡¡¡echo "$rundir"
¡¡¡¡/home/mysql/bin/safe_mysqld --user=mysql --pid-file="$rundir"/mysql.pid --datadir="$rundir"/var "$@"\
¡¡¡¡-O max_connections=500 -O wait_timeout=600 -O key_buffer=32M --port=3402 --socket="$rundir"/mysql.sock &

¡¡¡¡×¢ÊÍ£º
¡¡¡¡--pid-file="$rundir"/mysql.pid --socket="$rundir"/mysql.sock --datadir="$rundir"/var
¡¡¡¡Ä¿µÄ¶¼Êǽ«ÏàÓ¦Êý¾ÝºÍÓ¦ÓÃÁÙʱÎļþ·ÅÔÚÒ»Æð£»
¡¡¡¡-O ºóÃæÒ»°ãÊÇ·þÎñÆ÷Æô¶¯È«¾Ö±äÁ¿ÓÅ»¯²ÎÊý£¬ÓÐʱºòÐèÒª¸ù¾Ý¾ßÌåÓ¦Óõ÷Õû£»
¡¡¡¡--port: ²»Í¬µÄÓ¦ÓÃʹÓÃPORT²ÎÊý·Ö²¼µ½²»Í¬µÄ·þÎñÉÏÈ¥£¬Ò»¸ö·þÎñ¿ÉÒÔÌṩµÄÁ¬½ÓÊýÒ»°ãÊÇMySQL·þÎñµÄÖ÷Ҫƿ¾±£»

¡¡¡¡Ð޸IJ»Í¬µÄ·þÎñµ½²»Í¬µÄ¶Ë¿Úºó£¬ÔÚrc.localÎļþÖмÓÈ룺

¡¡¡¡/data/app_1/start_mysql.sh
¡¡¡¡/data/app_2/start_mysql.sh
¡¡¡¡/data/app_3/start_mysql.sh

¡¡¡¡×¢Ò⣺±ØÐëдȫ·¾¶

¡¡¡¡3 MySQLDµÄÍ£Ö¹½Å±¾£ºstop_mysql.sh

¡¡¡¡#!/bin/sh
¡¡¡¡rundir=`dirname "$0"`
¡¡¡¡echo "$rundir"
¡¡¡¡/home/mysql/bin/mysqladmin -u mysql -S"$rundir"/mysql.sock shutdown

¡¡¡¡Ê¹ÓÃÕâ¸ö½Å±¾µÄºÃ´¦ÔÚÓÚ£º

¡¡¡¡1£®¶à¸ö·þÎñÆô¶¯£º¶ÔÓÚ²»Í¬·þÎñÖ»ÐèÒªÐ޸Ľű¾ÖеÄ--port[=¶Ë¿ÚºÅ]²ÎÊý¡£µ¥¸öĿ¼ÏµÄÊý¾ÝºÍ·þÎñ½Å±¾¶¼ÊÇ¿ÉÒÔ¶ÀÁ¢´ò°üµÄ¡£

¡¡¡¡2£®ËùÓзþÎñÏàÓ¦Îļþ¶¼Î»ÓÚ/data/app_1/Ŀ¼Ï£º±ÈÈ磺mysql.pid mysql.sock£¬µ±Ò»Ì¨·þÎñÆ÷ÉÏÆô¶¯¶à¸ö·þÎñʱ£¬¶à¸ö·þÎñ²»»á»¥ÏàÓ°Ïì¡£µ«¶¼·Åµ½È±Ê¡µÄ/tmp/ÏÂÔòÓпÉÄܱ»ÆäËûÓ¦ÓÃÎóɾ¡£

¡¡¡¡3£®µ±Ó²ÅÌ1³öÎÊÌâÒÔºó£¬Ö±½Ó½«Ó²ÅÌ2·Åµ½Ò»Ì¨×°ºÃMySQLµÄ·þÎñÆ÷ÉϾͿÉÒÔÁ¢¿Ì»Ö¸´·þÎñ£¨Èç¹û·Åµ½my.cnfÀïÔò»¹ÐèÒª±¸·ÝÏàÓ¦µÄÅäÖÃÎļþ£©¡£

¡¡¡¡·þÎñÆô¶¯ºó/data/app_1/ÏÂÏàÓ¦µÄÎļþºÍĿ¼·Ö²¼ÈçÏ£º

¡¡¡¡/data/app_1/
¡¡¡¡¡¡¡¡start_mysql.sh ·þÎñÆô¶¯½Å±¾
¡¡¡¡¡¡¡¡stop_mysql.sh ·þÎñÍ£Ö¹½Å±¾
¡¡¡¡¡¡¡¡mysql.pid ·þÎñµÄ½ø³ÌID
¡¡¡¡¡¡¡¡mysql.sock ·þÎñµÄSOCK
¡¡¡¡¡¡¡¡var/ Êý¾ÝÇø
¡¡¡¡¡¡¡¡¡¡¡¡mysql/ Óû§¿â
¡¡¡¡¡¡¡¡¡¡¡¡app_1_db_1/ Ó¦Óÿâ
¡¡¡¡¡¡¡¡¡¡¡¡app_1_db_2/
¡¡¡¡...
¡¡¡¡/data/app_2/
¡¡¡¡...

¡¡¡¡²é¿´ËùÓеÄÓ¦Óýø³ÌID£º

¡¡¡¡cat /data/*/mysql.pid

¡¡¡¡²é¿´ËùÓÐÊý¾Ý¿âµÄ´íÎóÈÕÖ¾£º

¡¡¡¡cat /data/*/var/*.err

¡¡¡¡¸öÈ˽¨Ò飺MySQLµÄÖ÷Ҫƿ¾±ÔÚPORTµÄÁ¬½ÓÊýÉÏ£¬Òò´Ë£¬½«±í½á¹¹ÓÅ»¯ºÃÒÔºó£¬ÏàÓ¦µ¥¸öMySQL·þÎñµÄCPUÕ¼ÓÃÈÔÈ»ÔÚ10£¥ÒÔÉÏ£¬¾ÍÒª¿¼Âǽ«·þÎñ²ð·Öµ½¶à¸öPORTÉÏÔËÐÐÁË¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 1 ÌõÆÀÂÛ

  1. aggressor ÓÚ 2006-08-24 14:38:48·¢±í:

    лл¥Ö÷·ÖÏí