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

Mysql¶àʵÀýÆô¶¯

·¢²¼Ê±¼ä:2008-05-04 00:00:37À´Ô´:ºìÁª×÷Õß:yreqab
¶àʵÀýÆô¶¯ÆäʵҲ²»¸´ÔÓ£¬Ç°Ã桶MysqlµÄÆô¶¯²ÎÊý¡·ÒѾ­Ëµ¹ýÁË£¬¿ÉÒÔÖ¸¶¨ÅäÖÃÎļþ£¬ÄÇÆäʵÔÚÆô¶¯µÄʱºòÖ¸¶¨ÅäÖÃÎļþ£¬ÄǾÍÊǶÀÁ¢µÄÒ»¸ö·þÎñÁË£¬¿ÉÒÔ×ÔÐÐÅäÖÃÁË¡£

×ܽáÒ»ÏÂmysqlÆô¶¯ÐèÒªÄÄЩ¶«Î÷£º

1 ÅäÖÃÎļþ
2 Êý¾Ý¿âĿ¼ÀïµÄmysql¿â
3 pidÎļþ
4 sockÎļþ

ȨÏÞÎÊÌâ¾Í²»ÓÃ˵ÁË£¬Ö÷Ҫ˵һÏÂÈçºÎ²¿Êð¸ü¼Ó·½±ãºÏÀí£¬²Ù×÷¼òµ¥¡£

³µ¶«µÄÎÄÕÂÌá¼°µÄmysqlά»¤¾­Ñé²»´í£¬ÔĶÁÍê±Ï¿ÉÄܾõµÃ»¹ÊÇÓÐÍêÉƵãµÄ·½°¸£¬ÔÚÎҵĴ¦Àí·½Ê½¿ÉÄܾÍÏ£Íû°ÑһЩ¶«Î÷ÔÙÕûÀíһϡ£

1 app_1¡¢app_2Ö®ÀàµÄÎļþ¼Ð²¢²»ºÃ£¬ÎÞ·¨ÖªµÀÔËÐеĶ˿ںÅ
2 ²¿ÊðÎÒ¾õµÃ¿ÉÒÔ¿¼ÂÇÖ÷´ÓµÄÆô¶¯·½Ê½
3 ³£¹æ²ÎÊýÎÒ¾õµÃÔÚÅäÖÃÎļþÀï¶ÀÁ¢Ö¸¶¨Ò²²»´í
4 Æô¶¯½Å±¾¿ÉÒÔÖ»¿¼ÂDZ䶯µÄÎļþ¼Ð£¬ÕâÑù½Å±¾¸´ÖÆÁËÒ²²»ÓÃÐÞ¸Ä

ÏÂÃæ˵һϲ¿ÊðµÄÄÚÈÝ£º

1 ½Å±¾Èý¸ö£¬×÷ΪÖ÷·þÎñÆ÷Æô¶¯¡¢×÷Ϊ´Ó·þÎñÆ÷Æô¶¯¡¢¹Ø±Õ
2 ÅäÖÃÎļþÁ½¸ö£¬Ö÷·þÎñÆ÷Æô¶¯µÄºÍ´Ó·þÎñÆ÷Æô¶¯µÄ
3 Êý¾Ý¿âÖ¸¶¨ÔÚvarĿ¼£¬Ò²·½±ã´ò°ü

ÎÒ¾õµÃ¿ÉÒÔ°ÑÎļþ¼ÐÃûÔ» mysql £¬Ä¿Â¼ÐÎʽÈçÏ£º

[root@bogon mysql3308]# ls -R
.:
master_start.sh my_master.cnf my_slave.cnf slave_start.sh stop.sh var

./var:
bogon.err dbtest mydb mysql mysql-bin.000001 mysql-bin.000002 mysql-bin.index mysql.pid mysql.sock

./var/dbtest:
(Ê¡ÂÔ)

./var/mydb:
(Ê¡ÂÔ)

./var/mysql:
(Ê¡ÂÔ)

Ö÷·þÎñÆ÷Æô¶¯½Å±¾ master_start.sh

#!/bin/sh
rundir=dirname "$0"
datadir=`$rundir"/var"`
echo "server path : $rundir"
echo "data path : $datadir/"

/Data/apps/mysql/bin/mysqld_safe \
--defaults-file="$rundir"/my_master.cnf \
--pid-file="$rundir"/mysql.pid \
--datadir="$datadir" \
--socket="$rundir"/mysql.sock \
&

´Ó·þÎñÆ÷Æô¶¯½Å±¾ slave_start.sh

#!/bin/sh
rundir=`dirname "$0"`
datadir=$rundir"/var"
echo "server path : $rundir"
echo "data path : $datadir/"

/Data/apps/mysql/bin/mysqld_safe \
--defaults-file="$rundir"/my_slave.cnf \
--pid-file="$rundir"/mysql.pid \
--datadir="$datadir" \
--socket="$rundir"/mysql.sock \
&

ÅäÖÃÎļþ my_master.cnf

[mysqld]
port = 3308
socket = /tmp/mysql.sock
user = mysql

skip-locking
skip-name-resolve

max_connect_errors=100000
max_connections=1024
wait_timeout=600

key_buffer = 256M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M

binlog-ignore-db=mysql,test,information_schema
log-bin=mysql-bin

server-id = 1

#²¿·ÖÄÚÈÝ
#×¢Ò⣺²ÎÊýҲûϸµ÷½Ú£¬ºöÂÔµôµ×ϵÄÆäËüÀ¸Ä¿

´Ó·þÎñÆ÷µÄÅäÖò¶à£¬µ«Ö¸¶¨ÁËһЩÌØÊâµÄÄÚÈÝ£º
server-id = 1 ÒÔϵĸüÌæΪ£º

server-id = 2
master-host = 192.168.1.41
master-user = aslibra
master-password = aslibra.com
master-port = 3306

#read-only

¾ßÌå²ÎÊý¾ÍÏȲ»ÌÖÂÛÁË£¬Ï´ÎÔÙ˵

Í£Ö¹µÄ½Å±¾ stop.sh

#!/bin/sh
rundir=`dirname "$0"`
echo "$rundir"
/Data/apps/mysql5/bin/mysqladmin -uaslibra -paslibra.com -S"$rundir"/mysql.sock shutdown
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ