Home > Database > Mysql Tutorial > body text

PHPClientforMysqlBinlog_MySQL

WBOY
Release: 2016-06-01 12:58:37
Original
1163 people have browsed it

 

Install MySQL Replication Listener

https://github.com/bullsoft/mysql-replication-listener/archive/master.zip
<code class="hljs lasso">unzip mysql-replication-listener-master.zip
cd mysql-replication-listener-master
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-replication
make & make install</code>
Copy after login

Install php-binlog

https://github.com/bullsoft/php-binlog/archive/master.zip
<code class="hljs lasso"><code class="hljs lasso">unzip php-binlog-master.zip
cd php-binlog-master/ext
/usr/local/php5.5.15/bin/phpize
./configure --with-php-config=/usr/local/php5.5.15/bin/php-config --with-mysql-binlog=/usr/local/mysql-replication</code></code>
Copy after login

<code class="hljs lasso">Examples

<code class="hljs lasso">注:Binlog为行格式

<code class="hljs lasso"><code class="hljs lasso"><code class="language-php hljs "><!--?php

$link = binlog_connect("mysql://root:cpyf@127.0.0.1:3306");
//binlog_set_position($link, 4);  
//binlog_set_position($link, 4, 'mysql-bin.000006');                           

while($event=binlog_wait_for_next_event($link)) {
    // it will block here                                 
    switch($event['type_code']) {
        case BINLOG_DELETE_ROWS_EVENT:
            var_dump($event);
            // do what u want ...                           
            break;
        case BINLOG_WRITE_ROWS_EVENT:
            var_dump($event);
            // do what u want ...                           
            break;
        case BINLOG_UPDATE_ROWS_EVENT:
            var_dump($event);
            // do what u want ...                           
            break;
        default:
            // var_dump($event);                            
            break;
    }
}
</pre-->



</code></code></code>
Copy after login

<code class="hljs lasso"><code class="language-php hljs ">Update_rows

<code class="hljs lasso"><code class="hljs lasso"><code class="language-php hljs "><code class="language-sql hljs ">update `type` set type_id = 22 WHERE id in (58, 59);</code></code></code></code>
Copy after login
<code class="hljs lasso"><code class="hljs lasso"><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs ">array(5) {
  &#39;type_code&#39; =>
  int(24)
  &#39;type_str&#39; =>
  string(11) "Update_rows"
  &#39;db_name&#39; =>
  string(5) "cloud"
  &#39;table_name&#39; =>
  string(4) "type"
  &#39;rows&#39; =>
  array(4) {
    [0] =>
    array(5) {
      [0] =>
      string(2) "58"
      [1] =>
      string(8) "adsfasdf"
      [2] =>
      string(4) "asdf"
      [3] =>
      string(2) "22"
      [4] =>
      string(1) "0"
    }
    [1] =>
    array(5) {
      [0] =>
      string(2) "58"
      [1] =>
      string(8) "adsfasdf"
      [2] =>
      string(4) "asdf"
      [3] =>
      string(1) "4"
      [4] =>
      string(1) "0"
    }
    [2] =>
    array(5) {
      [0] =>
      string(2) "59"
      [1] =>
      string(8) "adsfasdf"
      [2] =>
      string(4) "asdf"
      [3] =>
      string(2) "22"
      [4] =>
      string(1) "0"
    }
    [3] =>
    array(5) {
      [0] =>
      string(2) "59"
      [1] =>
      string(8) "adsfasdf"
      [2] =>
      string(4) "asdf"
      [3] =>
      string(1) "4"
      [4] =>
      string(1) "0"
    }
  }
}</code></code></code></code></code>
Copy after login

<code class="hljs lasso"><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs ">Delete_rows

<code class="hljs lasso"><code class="hljs lasso"><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs "><code class="language-sql hljs ">delete from `type` WHERE id in (58, 59);</code></code></code></code></code></code>
Copy after login
<code class="hljs lasso"><code class="hljs lasso"><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs ">array(5) {
  &#39;type_code&#39; =>
  int(25)
  &#39;type_str&#39; =>
  string(11) "Delete_rows"
  &#39;db_name&#39; =>
  string(5) "cloud"
  &#39;table_name&#39; =>
  string(4) "type"
  &#39;rows&#39; =>
  array(2) {
    [0] =>
    array(5) {
      [0] =>
      string(2) "58"
      [1] =>
      string(8) "adsfasdf"
      [2] =>
      string(4) "asdf"
      [3] =>
      string(2) "22"
      [4] =>
      string(1) "0"
    }
    [1] =>
    array(5) {
      [0] =>
      string(2) "59"
      [1] =>
      string(8) "adsfasdf"
      [2] =>
      string(4) "asdf"
      [3] =>
      string(2) "22"
      [4] =>
      string(1) "0"
    }
  }
}</code></code></code></code></code></code></code>
Copy after login

<code class="hljs lasso"><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs ">Write_rows

<code class="hljs lasso"><code class="hljs lasso"><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs "><code class="language-sql hljs ">insert into type values (Null, "Hello, World", "Best world", 4, 0), (NULL, "你好,世界", "世界很美好", 3, 5);</code></code></code></code></code></code></code></code>
Copy after login
<code class="hljs lasso"><code class="hljs lasso"><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs "><code class="language-sql hljs "><code class="language-php hljs ">array(5) {
  &#39;type_code&#39; =>
  int(23)
  &#39;type_str&#39; =>
  string(10) "Write_rows"
  &#39;db_name&#39; =>
  string(5) "cloud"
  &#39;table_name&#39; =>
  string(4) "type"
  &#39;rows&#39; =>
  array(2) {
    [0] =>
    array(5) {
      [0] =>
      string(2) "95"
      [1] =>
      string(12) "Hello, World"
      [2] =>
      string(10) "Best world"
      [3] =>
      string(1) "4"
      [4] =>
      string(1) "0"
    }
    [1] =>
    array(5) {
      [0] =>
      string(2) "96"
      [1] =>
      string(15) "你好,世界"
      [2] =>
      string(15) "世界很美好"
      [3] =>
      string(1) "3"
      [4] =>
      string(1) "5"
    }
  }
}</code></code></code></code></code></code></code></code></code>
Copy after login
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template