• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Bugs

            MMORPG game develop.

            [轉載]Mysql 的 同步

            平臺:Redhat AS4.0  Mysql-max-5.0.16-linux-i686 (原創)
            作者:jiang313hua         MSN:jiang313hua@hotmail.com
            歡迎大家指出錯誤! 歡迎轉載!
            本文經過作者測試過.

            要求:
            1.首先裝好系統Redhat AS4.0 ;

            2.Mysql-max-5.0.16-linux-i686解壓縮不需要編譯,直接安裝就可以:
               shell> groupadd mysql
               shell> useradd -g mysql mysql
               shell> cd /usr/local
               shell> tar zxvf  /data/soft/mysql-max-5.0.16-linux-i686-glibc23.tar.gz
               shell> ln -s mysql-max-5.0.16-linux-i686-glibc23  mysql
               shell> cd mysql
               shell> scripts/mysql_install_db --user=mysql
               shell> chown -R root  .
               shell> chown -R mysql data
               shell> chgrp -R mysql .
               shell> bin/mysqld_safe --user=mysql &
            具體的操作在其包里的INSTALL-BINARY文件中;

            3.如果設置了iptables,請將3306端口打開;

            4.兩臺服務器的ip:192.168.1.56
                             192.168.1.57

            具體過程:
            1. 建立需要同步的用戶和需要同步的數據;登陸到192.168.1.56服務器的數據庫上:
                shell>mysql -uroot -p123456
                mysql>CREATE DATABASE bak;      //建立數據庫
                mysql>GRANT REPLICATION SLAVE ON *.* TO tongbu@'192.168.1.57' DENTIFIED  BY '123456';     //建立同步的mysql帳號           

                                    tongbu,密碼為123456,指定只能從192.168.1.57上使用tongbu登陸,并可同步mysql中任意庫
                mysql>flush privileges;

            2. 登陸到192.168.1.57服務器的數據庫上:
                shell>mysql -uroot -p123456
                mysql>CREATE DATABASE bak;
                mysql>GRANT REPLICATION SLAVE ON *.* TO tongbu@'192.168.1.56' DENTIFIED  BY '123456';
                mysql>flush privileges;

            3. 把mysql/support-files下面的mysql配置文件復制到/etc目錄下,
               # cp /usr/local/mysql/support-files/my-large.cnf   /etc/my.cnf
                其中.cnf文檔如下:
                 my-small.cnf     內存少于或等于64M,只提供很少的的數據庫服務
                 my-medium.cnf    內存在32M--64M之間而且和其他服務一起使用,例如web
                 my-large.cnf     內存有512M主要提供數據庫服務
                 my-huge.cnf      內存有1G到2G,主要提供數據庫服務
              
            4. 修改192.168.1.56上的my.cnf文件,在這里我們把它命名為1號服務器
                 #  vi /etc/my.cnf         
                  在[mysqld]添加一下內容:
                   log-bin=mysql-bin
                   master-host=192.168.157         
                   master-user=tongbu               
                   master-password=123456           
                   master-port=3306                 
                   binlog-do-db=bak                 

               因為mysql默認是作為主服務器,因此不需要指定 server-id =1 這項

            5. 修改192.168.1.57上的my.cnf文件,在這里我們把它命名為2號服務器
               #  vi /etc/my.cnf  ,首先在my.cnf文件中找到 server-id這一項,然后修改成:
                   server-id =2
                  在[mysqld]添加一下內容:
                  master-host=192.168.1.56
                  master-user=tongbu
                  master-password=123456
                  master-port   =3306
                  master-connect-retry=30
                  replicate-do-db=bak
                  log-bin
                  binlog-do-db=bak

                解釋:
                 master-host=192.168.1.57 表示本機做1號服務器時的master為192.168.1.57;
                 master-user=username   這里表示2號服務器上開放的一個有權限的用戶,使其可以從1號機器連接到2號機器并進行復制;
                 master-password=password 表示授權用戶的密碼;
                 master-port=3306  master上MySQL服務Listen3306端口;
                 master-connect-retry=30  同步間隔時間30秒;
                 replicate-do-db=bak   表示同步bak數據庫;
                 log-bin               打開logbin選項以能寫到slave的 I/O線程;
                 binlog-do-db=bak    表示別的機器可以同步本機的bak數據庫.

              
            6. 為兩個數據庫中的bak數據庫建立或者導入相同的表。

            7.  重新啟動Mysql.
               # /usr/local/mysql/support-files/mysql.server restart

            8.這一步非常關鍵,致是我在這里走了很多冤枉路,不知所措!
                登陸到192.168.1.56 數據庫:
                mysql>CHANGE MASTER TO
                      MASTER_HOST='192.168.1.57',
                     MASTER_USER='tongbu',
                     MASTER_PASSWORD='123456'

               登陸到192.168.1.57 數據庫:

                    mysql>CHANGE MASTER TO
                      MASTER_HOST='192.168.1.56',
                      MASTER_USER='tongbu',
                      MASTER_PASSWORD='123456'


              在192.168.1.56查看mysql:
              mysql> show processlist;
                +----+-------------+--------------------+------+-------------+------+---------------------------------------------------

            --------------------+------------------+
            | Id | User        | Host               | db   | Command     | Time | State                                                   

                          | Info             |
            +----+-------------+--------------------+------+-------------+------+-------------------------------------------------------

            ----------------+------------------+
            |  1 | system user |                    | NULL | Connect     |   71 | Waiting for master to send event                        

                          | NULL             |
            |  2 | system user |                    | NULL | Connect     | 1150 | Has read all relay log; waiting for the slave I/O

            thread to update it | NULL             |
            |  3 | root        | localhost          | NULL | Query       |    0 | NULL                                                   

                          | show processlist |
            |  4 | tongbu   | 192.168.1.57:32787 | NULL | Binlog Dump |   16 | Has sent all binlog to slave; waiting for binlog to be

            updated        | NULL             |
            +----+-------------+--------------------+------+-------------+------+-------------------------------------------------------

            ----------------+------------------+
            4 rows in set (0.00 sec)

               在192.168.1.57查看mysql:
                      mysql> show processlist;
            +----+-------------+--------------------+------+-------------+------+-------------------------------------------------------

            ----------------+------------------+
            | Id | User        | Host               | db   | Command     | Time | State                                                   

                          | Info             |
            +----+-------------+--------------------+------+-------------+------+-------------------------------------------------------

            ----------------+------------------+
            |  1 | system user |                    | NULL | Connect     |   37 | Connecting to master                                    

                          | NULL             |
            |  2 | system user |                    | NULL | Connect     |   37 | Has read all relay log; waiting for the slave I/O

            thread to update it | NULL             |
            |  3 | tongbu      | 192.168.1.56:32829 | NULL | Binlog Dump |   33 | Has sent all binlog to slave; waiting for binlog to be

            updated        | NULL             |
            |  4 | root        | localhost          | NULL | Query       |    0 | NULL                                                   

                          | show processlist |
            +----+-------------+--------------------+------+-------------+------+-------------------------------------------------------

            ----------------+------------------+
            4 rows in set (0.00 sec)



               如果看到這樣的信息,說明雙向同步成功了,否則檢查以上步驟!

            9.現在可以在bak數據庫中,插入記錄。檢查同步情況!



            參考文檔:
                     Mysql官方文檔
                    《做了篇關于Mysql replication的文檔,歡迎大家糾錯....》  http://www.chinaunix.net  作者:雙眼皮的豬

            posted on 2008-04-01 10:16 Bugs 閱讀(278) 評論(0)  編輯 收藏 引用

            国产成人久久激情91| 日本五月天婷久久网站| …久久精品99久久香蕉国产| 久久精品a亚洲国产v高清不卡| 久久久久久人妻无码| 国产午夜福利精品久久| 久久久久久精品免费看SSS| 久久精品无码一区二区无码| 久久久久亚洲AV成人网人人网站| 少妇人妻综合久久中文字幕| 99久久99这里只有免费的精品| 久久精品国产第一区二区| 久久精品亚洲一区二区三区浴池| 国产精品久久久99| 日韩精品久久久久久久电影蜜臀| 久久国产成人午夜AV影院| 日韩精品久久久久久久电影蜜臀| 久久免费观看视频| 久久国产精品无码一区二区三区| 亚洲精品无码久久毛片| 国产ww久久久久久久久久| 午夜久久久久久禁播电影| 日韩美女18网站久久精品| segui久久国产精品| 1000部精品久久久久久久久| 久久AV无码精品人妻糸列| 亚洲Av无码国产情品久久| 久久精品国产免费| 精品国产91久久久久久久| 色婷婷综合久久久中文字幕| 久久天天婷婷五月俺也去| 欧美激情精品久久久久久久九九九 | 99麻豆久久久国产精品免费| 一本一道久久a久久精品综合| 亚洲一区二区三区日本久久九| 精品久久久久久久无码| 无码专区久久综合久中文字幕 | 性做久久久久久久久久久| 精品久久人人做人人爽综合| 99久久99久久精品国产片| 91久久福利国产成人精品|