MySQL Master/Slave Server ¼ÜÉè
»·¾³£ºÁ½Ì¨·þÎñÆ÷IP:192.168.30.57\192.168.30.58
1¡¢ÏÂÔØmysql-5.0.86-linux-i686-glibc23.tar.gz µ½http://dev.mysql.com/downloads/mysql/5.0.html#linuxÏÂÔØ
2¡¢½âѹ tar -zxvf
mysql-5.0.86-linux-i686-glibc23.tar.gz
3¡¢´´½¨Á´½Ó ln -s
mysql-5.0.86-linux-i686-glibc23
mysql
4¡¢½øÈëmysql
Ŀ¼Ï cd mysql
5£ºÐ½¨ mysql Óû§×é
groupadd mysql
6£ºÐ½¨ mysqlÓû§²¢ÊôÓÚmysqlÓû§×é
useradd -g mysql mysql
7£ºÖ´Ðа²×°½Å±¾£º
scripts/mysql_install_db --user=mysql
8£º¸Ä±äÊô×é (×¢ÒâСÊýµã)
chown -R root . (×¢ÒâСÊýµã)
9£º¸Ä±äÊý¾ÝÊô×é
chown -R mysql data
10£ºÊäÈëÃüÁî chgrp -R mysql . (×¢ÒâСÊýµã)
11¡¢¿½±´ÅäÖÃÎļþ cp supports-files/my-lagre.cnf /etc/my.cnf
12¡¢Æô¶¯mysql
bin/mysqld_safe -user=root &
13¡¢µÇ¼ bin/mysql
-uroot -p
Ò»¡¢Master Server ·½Ãæ
A.É趨 Server-id
Ê×ÏÈÒªÉ趨 server-id¡£»ù±¾ÉÏûÓÐÊ²Ã´ÌØ±ðµÄÏÞÖÆ£¬Ö»Òª Master ºÍ Slave µÄ server-id ²»Ò»Ñù¼´¿É£¬µ«ÆäÖµ±ØÐèΪ
1 ÖÁ 2^32-1 Ö®¼ä¡£
[mysqld]
server-id=1
B.¿ªÆô Binary Log
ÐÞ¸Ä MySQL Server µÄϵͳÉ趨µµ£¬ÔÚ [mysqld] Ï·½¼ÓÉÏ log-bin=mysql-bin£¬ÀýÈ磺
ÒýÓÃ:
[mysqld]
log-bin=mysql-bin
MySQL µÄ Binary Log »á½«ËùÓжÔì¶×ÊÁÏ¿âµÄÐ޸IJÙ×÷È«²¿¼Ç¼ÆðÀ´£¬¶ø Slave Óë Master
Ö®¼ä½øÐÐ×ÊÁÏͬ²½µÄ·½Ê½ºÜ¼òµ¥£¬¾ÍÊÇ Slave »á°Ñ Master Server µÄ Binary Log ÄùýÀ´Ö´ÐУ¬Ò²¾ÍÊÇ˵ Slave
Server »á "ÖØ×ö" ÔÚ Master Server ÉÏ·¢ÉúµÄ¸÷ÖÖÐ޸IJÙ×÷¡£Òò´Ë Master Server Îð±ØÒª¿ªÆô Binary
Log ¹¦ÄÜ£¬·ñÔò Master/Slave ¼Ü¹¹ÎÞ·¨ÔË×÷¡£
C.É趨 Replication Slave ȨÏÞ
ÎÒÃDZØÐëÒªÔÚ Master Server ÉÏ×öÉ趨£¬Èà Slave ¾ßÓпÉÒÔ´Ó Master Server ÉÏ Copy ×ÊÁϵÄȨÏÞ(ÕýʽµÄ˵·¨Îª Replication Slave Priviledges)£¬ËùÐèʹÓõÄÖ¸ÁîÈçÏ£º
ÒýÓÃ:
GRANT REPLICATION SLAVE ON *.* TO 'slave1'@'192.168.30.58'
IDENTIFIED BY '123456';
Òâ˼Ϊ£º
ÔÊÐí 192.168.30.58 Õâ¸ö IP ʹÓà slave1 Õʺţ¬À´½øÐÐ×ÊÁÏͬ²½(Replication)¡£
slave1 Õâ¸öÕʺŵÄÃÜÂëΪ 123456¡£
´ËʱÄú¿ÉÒÔ´Ó Slave Server(192.168.30.58) ʹÓà mysql client program ½øÐÐÑéÖ¤£¬¿´ÊÇ·ñÓÐÕý
Ïà¹ØÎĵµ£º
ÎÒÃǵÄÏîÄ¿ÖÐÓкö಻µÈÓÚµÄÇé¿ö¡£½ñÌìдÕâÆªÎÄÕ¼òµ¥µÄ·ÖÎöÒ»ÏÂÔõô¸öÓÅ»¯·¨¡£
ÕâÀïµÄ·Ö±íÂß¼ÊǸù¾Ýt_group±íµÄuser_name×éµÄ¸öÊýÀ´·ÖµÄ¡£
ÒòΪÕâÖÖÇé¿öµ¥¶Àuser_name×Ö¶ÎÉϵÄË÷Òý¾ÍÊôÓÚÀÃË÷Òý¡£Æð²»ÁËɶÃûÃ÷ÏÔµÄЧ¹û¡£
1¡¢ÊÔÑéPROCEDURE.
DELIMITER $$
DROP PROCEDURE `t_girl`.`sp_split_table`$$
CREATE PROCE ......
MYSQL ÐÞ¸ÄrootÃÜÂëÃüÁî
cmdÏÂÇл»µ½ mysql °²×°Ä¿Â¼
Àý
d:/mysql/bin
ǰÌ᣺mysqlÓû§rootÃÜÂëΪ¿Õ.
ÊäÈë mysql -u root mysql
mysql> ״̬ÏÂÊäÈë update user set password=password('ÐÂÃÜÂë') where user='root';
»ØÏÔ
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
......
ÎÊ£ºÈç¹ûÍü¼ÇÁËMySQLµÄrootÃÜÂëÓ¦µ±ÈçºÎÈ¡»Ø£¿
´ð£º½â¾ö·½·¨ÈçÏ£º
·¨1£ºÔÚmy.cnfµÄ[mysqld]×ֶμÓÈ룺
skip-grant-tables
È»ºóÖØÆôÄãµÄmysqld,ÕâÑù¾ÃûÓÐÃÜÂëÁË.
È»ºó½øÈëmysql¡£
UPDATE mysql.user SET Password=PASSWORD
('password') WHERE User='root';
³É¹¦ºó
FLUSH PRIVILEGES;
×îºóÈ¥µômy.cnfÖеÄs ......
¶Ômysql´æ´¢¹ý³ÌµÄ¼òµ¥Ó¦ÓÃ
Ïò±íÖвåÈëÄ£ÄâÊý¾Ý£¬¼ì²é·ÖҳЧ¹ûÊÇ·ñ³ö´í¡£
create procedure dowhile()
begin
declare cnt INT default 0;
while cnt<100 do
INSERT INTO `test`.`news` (`F_ID` ,`F_TITLE` ,`F_CLASSID` ,`F_ISUP` ,`F_CONTENT` ,`F_SOURCE` ,`F_DATETIME` ,`F_RE ......
MySQLÓкܶà¿ÉÒÔµ¼ÈëÊý¾ÝµÄ·½·¨£¬È»¶øÕâЩֻÊÇÊý¾Ý´«ÊäÖеÄÒ»°ë£¬ÁíÍâµÄÒ»°ãÊÇ´ÓMySQLÊý¾Ý¿âÖе¼³öÊý¾Ý¡£ÓÐÐí¶àµÄÔÒòÎÒÃÇÐèÒªµ¼³öÊý¾Ý¡£Ò»¸öÖØ
ÒªµÄÔÒòÊÇÓÃÓÚ±¸·ÝÊý¾Ý¿â¡£Êý¾ÝµÄÔì¼Û³£³£Êǰº¹óµÄ£¬ÐèÒª½÷É÷´¦ÀíËüÃÇ¡£¾³£µØ±¸·Ý¿ÉÒÔ°ïÖú·ÀÖ¹±¦¹óÊý¾ÝµØ¶ªÊ§£»ÁíÍâÒ»¸öÔÒòÊÇ£¬Ò²ÐíÄúÏ£Íûµ¼³öÊý¾ÝÀ´¹²
Ïí¡£ ÔÚÕâ¸öÐÅÏ¢¼¼Ê ......