{"id":65,"date":"2021-03-13T12:24:59","date_gmt":"2021-03-13T04:24:59","guid":{"rendered":"http:\/\/daishen.ltd\/?p=65"},"modified":"2021-03-13T12:33:50","modified_gmt":"2021-03-13T04:33:50","slug":"%e4%b8%bb%e4%bb%8e%e5%a4%8d%e5%88%b6%e5%9f%ba%e7%a1%80","status":"publish","type":"post","link":"https:\/\/daishen.ltd\/?p=65","title":{"rendered":"\u4e3b\u4ece\u590d\u5236\u57fa\u7840"},"content":{"rendered":"<h1>0.\u4f01\u4e1a\u9ad8\u53ef\u7528\u6027\u6807\u51c6 ***<\/h1>\n<h2>0.1 \u5168\u5e74\u65e0\u6545\u969c\u7387(\u975e\u8ba1\u5212\u5185\u6545\u969c\u505c\u673a)<\/h2>\n<pre><code class=\"language-rust\" lang=\"rust\">99.9%                 ----&gt; 0.001*365*24*60=525.6  min\n99.99%                ----&gt; 0.0001*365*24*60=52.56 min\n99.999%               ----&gt; 0.0001*365*24*60=5.256 min\n<\/code><\/pre>\n<h2>0.2 \u9ad8\u53ef\u7528\u67b6\u6784\u65b9\u6848<\/h2>\n<pre><code class=\"language-undefined\" lang=\"undefined\">\u8d1f\u8f7d\u5747\u8861:\u6709\u4e00\u5b9a\u7684\u9ad8\u53ef\u7528\u6027 \nLVS  Nginx\n\u4e3b\u5907\u7cfb\u7edf:\u6709\u9ad8\u53ef\u7528\u6027,\u4f46\u662f\u9700\u8981\u5207\u6362,\u662f\u5355\u6d3b\u7684\u67b6\u6784\nKA ,   MHA, MMM\n\u771f\u6b63\u9ad8\u53ef\u7528(\u591a\u6d3b\u7cfb\u7edf): \nNDB Cluster  Oracle RAC  Sysbase cluster   , InnoDB Cluster\uff08MGR\uff09,PXC , MGC\n<\/code><\/pre>\n<h1>1. \u4e3b\u4ece\u590d\u5236\u7b80\u4ecb(MySql Replication) **<\/h1>\n<p>\u804c\u8d23\uff1a<\/p>\n<p>1.\u642d\u5efa\u4e3b\u4ece\u590d\u5236<br \/>\n2.\u4e3b\u4ece\u539f\u7406\u719f\u6089<br \/>\n3.\u4e3b\u4ece\u7684\u6545\u969c\u5904\u7406.<br \/>\n4.\u4e3b\u4ece\u5ef6\u65f6<br \/>\n5.\u4e3b\u4ece\u7684\u7279\u6b8a\u67b6\u6784\u7684\u914d\u7f6e\u4f7f\u7528<br \/>\n6.\u4e3b\u4ece\u67b6\u6784\u7684\u6f14\u53d8<\/p>\n<pre><code class=\"language-css\" lang=\"css\">1.1. \u57fa\u4e8e\u4e8c\u8fdb\u5236\u65e5\u5fd7\u590d\u5236\u7684\n1.2. \u4e3b\u5e93\u7684\u4fee\u6539\u64cd\u4f5c\u4f1a\u8bb0\u5f55\u4e8c\u8fdb\u5236\u65e5\u5fd7\n1.3. \u4ece\u5e93\u4f1a\u8bf7\u6c42\u65b0\u7684\u4e8c\u8fdb\u5236\u65e5\u5fd7\u5e76\u56de\u653e,\u6700\u7ec8\u8fbe\u5230\u4e3b\u4ece\u6570\u636e\u540c\u6b65\n1.4. \u4e3b\u4ece\u590d\u5236\u7684\u8fc7\u7a0b\u662f\u5f02\u6b65\n1.5. \u4e3b\u4ece\u590d\u5236\u6838\u5fc3\u529f\u80fd:\n\u8f85\u52a9\u5907\u4efd,\u5904\u7406\u7269\u7406\u635f\u574f                   \n\u6269\u5c55\u65b0\u578b\u7684\u67b6\u6784:\u9ad8\u53ef\u7528,\u9ad8\u6027\u80fd,\u5206\u5e03\u5f0f\u67b6\u6784\u7b49\n<\/code><\/pre>\n<h1>2. \u4e3b\u4ece\u590d\u5236\u524d\u63d0(\u642d\u5efa\u4e3b\u4ece\u7684\u8fc7\u7a0b) ***<\/h1>\n<pre><code class=\"language-css\" lang=\"css\">(1) 2\u4e2a\u6216\u4ee5\u4e0a\u7684\u6570\u636e\u5e93\u5b9e\u4f8b\n(2) \u4e3b\u5e93\u9700\u8981\u5f00\u542f\u4e8c\u8fdb\u5236\u65e5\u5fd7\n(3) server_id\u8981\u4e0d\u540c,\u533a\u5206\u4e0d\u540c\u7684\u8282\u70b9\n(4) \u4e3b\u5e93\u9700\u8981\u5efa\u7acb\u4e13\u7528\u7684\u590d\u5236\u7528\u6237(replication slave)\n(5) \u4ece\u5e93\u5e94\u8be5\u901a\u8fc7\u5907\u4efd\u4e3b\u5e93,\u6062\u590d\u7684\u65b9\u6cd5\u8fdb\u884c\u201d\u8865\u8bfe\"\n(7) \u4eba\u4e3a\u544a\u8bc9\u4ece\u5e93\u4e00\u4e9b\u590d\u5236\u4fe1\u606f(ip port user pass,\u4e8c\u8fdb\u5236\u65e5\u5fd7\u8d77\u70b9)\n(8) \u4ece\u5e93\u5e94\u8be5\u5f00\u542f\u4e13\u95e8\u7684\u590d\u5236\u7ebf\u7a0b\n\n<\/code><\/pre>\n<h1>3. \u4e3b\u4ece\u590d\u5236\u642d\u5efa(Classic replication) ***<\/h1>\n<h2>3.1 \u6e05\u7406\u4e3b\u5e93\u6570\u636e<\/h2>\n<pre><code class=\"language-shell\" lang=\"shell\">pkill mysqld\nsystemctl start mysqld3307\nrm -rf \/data\/3308\/data\/*\nrm -rf \/data\/3308\/mysql-bin.*\n<\/code><\/pre>\n<h2>3.2 \u91cd\u65b0\u521d\u59cb\u53163308<\/h2>\n<pre><code class=\"language-shell\" lang=\"shell\">mysqld --initialize-insecure --user=mysql --basedir=\/application\/mysql --datadir=\/data\/3308\/data\n\nsystemctl start mysqld3307\nsystemctl start mysqld3308\nmysql -uroot -p1  -S \/data\/3307\/mysql.sock -e \"select @@port\"\nmysql -S \/data\/3308\/mysql.sock -e \"select @@port\"\n<\/code><\/pre>\n<h2>3.3 \u4e3b\u5e93\u4fee\u6539my.cnf ,\u5f00\u542f\u4e8c\u8fdb\u5236\u65e5\u5fd7\u529f\u80fd\uff0c\u68c0\u67e5server_id<\/h2>\n<pre><code class=\"language-kotlin\" lang=\"kotlin\">[root@db01 3307]# vim \/data\/3307\/my.cnf \nlog_bin=\/data\/3307\/data\/mysql-bin\n<\/code><\/pre>\n<h2>3.4 \u542f\u52a8\u6240\u6709\u8282\u70b9<\/h2>\n<pre><code class=\"language-shell\" lang=\"shell\">[root@db01 3307]# systemctl start mysqld3307\n[root@db01 3307]# systemctl start mysqld3308\n[root@db01 3307]# systemctl start mysqld3309\n\n[root@db01 3307]# ps -ef |grep mysqld\nmysql      3684      1  4 09:59 ?        00:00:00 \/app\/mysql\/bin\/mysqld --defaults-file=\/data\/3307\/my.cnf\nmysql      3719      1  7 09:59 ?        00:00:00 \/app\/mysql\/bin\/mysqld --defaults-file=\/data\/3308\/my.cnf\nmysql      3754      1  8 09:59 ?        00:00:00 \/app\/mysql\/bin\/mysqld --defaults-file=\/data\/3309\/my.cnf\n\n[root@db01 3307]# mysql -S \/data\/3307\/mysql.sock -e \"select @@server_id\"\n[root@db01 3307]# mysql -S \/data\/3308\/mysql.sock -e \"select @@server_id\"\n[root@db01 3307]# mysql -S \/data\/3309\/mysql.sock -e \"select @@server_id\"\n<\/code><\/pre>\n<h2>3.5 \u4e3b\u5e93\u4e2d\u521b\u5efa\u590d\u5236\u7528\u6237<\/h2>\n<pre><code class=\"language-csharp\" lang=\"csharp\">[root@db01 3307]# mysql -S \/data\/3307\/mysql.sock \nmysql&gt;grant replication slave on *.* to repl@'10.0.0.%' identified by '123';\nmysql&gt;select user,host from mysql.user;\n<\/code><\/pre>\n<h2>3.6 \u5907\u4efd\u4e3b\u5e93\u5e76\u6062\u590d\u5230\u4ece\u5e93<\/h2>\n<pre><code class=\"language-shell\" lang=\"shell\">[root@db01 ]#  mysqldump -uroot -p1  -S \/data\/3307\/mysql.sock -A --master-data=2 --single-transaction  -R --triggers &gt;\/tmp\/full.sql\n\n[root@db01 ]# mysql -S \/data\/3308\/mysql.sock\nmysql&gt; set sql_log_bin=0;\nmysql&gt; source \/backup\/full.sql\n<\/code><\/pre>\n<h2>3.7 \u544a\u77e5\u4ece\u5e93\u5173\u952e\u590d\u5236\u4fe1\u606f<\/h2>\n<pre><code class=\"language-shell\" lang=\"shell\">ip port user  password  binlog position \n\nvim \/tmp\/full.sql\n\n-- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000004', MASTER_LOG_POS=154;\n\n[root@db01 3307]# mysql -S \/data\/3308\/mysql.sock\ndb01 [mysql]&gt;help change master to\n\nCHANGE MASTER TO\n  MASTER_HOST='10.0.0.51',\n  MASTER_USER='repl',\n  MASTER_PASSWORD='123',\n  MASTER_PORT=3307,\n  MASTER_LOG_FILE='mysql-bin.000004',\n  MASTER_LOG_POS=154,\n  MASTER_CONNECT_RETRY=10;\n<\/code><\/pre>\n<h2>3.8 \u5f00\u542f\u4e3b\u4ece\u4e13\u7528\u7ebf\u7a0b<\/h2>\n<pre><code class=\"language-undefined\" lang=\"undefined\">mysql&gt; start slave;\n<\/code><\/pre>\n<h2>3.9 \u68c0\u67e5\u590d\u5236\u72b6\u6001<\/h2>\n<pre><code class=\"language-mysql\" lang=\"mysql\">mysql  -S \/data\/3308\/mysql.sock -e \"show slave  status \\G\"|grep 'Yes'\n\nSlave_IO_Running: Yes\nSlave_SQL_Running: Yes\n\n\u4e3b\u5e93\uff1amysql -uroot -p1 -S \/data\/3307\/mysql.sock -e \"create database maibi:\"\n\u4ece\u5e93\uff1amysql  -S \/data\/3308\/mysql.sock -e \"show databases\"\n<\/code><\/pre>\n<h1>4. \u4e3b\u4ece\u590d\u5236\u7684\u539f\u7406 (Classic Replication)<strong>*<\/strong><\/h1>\n<h2>4.1 \u4e3b\u4ece\u4e2d\u8bbe\u7f6e\u5230\u7684\u6587\u4ef6\u548c\u7ebf\u7a0b<\/h2>\n<h3>4.1.1 \u7ebf\u7a0b<\/h3>\n<pre><code class=\"language-undefined\" lang=\"undefined\">\u4e3b:\nBin_Dump_THREAD:DUMP_T\n\u4ece:\nSLAVE_IO_THREAD:IO_T\nSLAVE_SQL_THREAD:SQL_T\n<\/code><\/pre>\n<h3>4.1.2 \u6587\u4ef6<\/h3>\n<pre><code class=\"language-dart\" lang=\"dart\">\u4e3b:\nmysql-bin.000001\t\t\t===&gt;\u4e8c\u8fdb\u5236\u65e5\u5fd7\n\u4ece: \ndb01-relay.000001     \t\t===&gt;\u4e2d\u7ee7\u65e5\u5fd7\nmaster.info                 ===&gt;\u4e3b\u5e93\u4fe1\u606f\u8bb0\u5f55\u65e5\u5fd7\nrelay-log.info              ===&gt; \u8bb0\u5f55\u4e2d\u7ee7\u5e94\u7528\u60c5\u51b5\u4fe1\u606f\n<\/code><\/pre>\n<h1>4.2 \u4e3b\u4ece\u590d\u5236\u539f\u7406<\/h1>\n<h1><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/daishen.ltd\/wp-content\/uploads\/2021\/03\/\u4e3b\u4ece\u590d\u5236\u539f\u7406\u56fe-300x161.png'><img class=\"lazyload lazyload-style-7\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  loading=\"lazy\" decoding=\"async\" class=\"alignnone  wp-image-68\" data-original=\"https:\/\/daishen.ltd\/wp-content\/uploads\/2021\/03\/\u4e3b\u4ece\u590d\u5236\u539f\u7406\u56fe-300x161.png\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" width=\"605\" height=\"325\"  sizes=\"auto, (max-width: 605px) 100vw, 605px\" \/><\/div><\/h1>\n<p><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/\/\/upload-images.jianshu.io\/upload_images\/16956686-a4273ecc8aa1c370.png?imageMogr2\/auto-orient\/strip|imageView2\/2\/w\/724\/format\/webp'><img class=\"lazyload lazyload-style-7\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  loading=\"lazy\" decoding=\"async\" class=\"alignnone\" data-original=\"https:\/\/\/\/upload-images.jianshu.io\/upload_images\/16956686-a4273ecc8aa1c370.png?imageMogr2\/auto-orient\/strip|imageView2\/2\/w\/724\/format\/webp\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"\" width=\"724\" height=\"422\" \/><\/div><\/p>\n<p>\u4e3b\u4ece\u590d\u5236\u539f\u7406\u63cf\u8ff0\uff1a<\/p>\n<pre><code class=\"language-text\" lang=\"text\">1.\u4ece\u5e93\u6267\u884cchangemasterto\u547d\u4ee4(\u4e3b\u5e93\u7684\u8fde\u63a5\u4fe1\u606f+\u590d\u5236\u7684\u8d77\u70b9)\n2.\u4ece\u5e93\u4f1a\u5c06\u4ee5\u4e0a\u4fe1\u606f\uff0c\u8bb0\u5f55\u5230master.info\u6587\u4ef6\n3.\u4ece\u5e93\u6267\u884cstart slave \u547d\u4ee4,\u7acb\u5373\u5f00\u542fI0_T\u548cSQL_T .\n4.\u4ece\u5e93IO_T,\u8bfb\u53d6master. info\u6587\u4ef6\u4e2d\u7684\u4fe1\u606f\u83b7\u53d6\u5230IP,PORT,User,Pass,binlog\u7684\u4f4d\u7f6e\u4fe1\u606f\n5.\u4ece\u5e93I0_T\u8bf7\u6c42\u8fde\u63a5\u4e3b\u5e93,\u4e3b\u5e93\u4e13\u95e8\u63d0\u4f9b\u4e00\u4e2aDUMP_T,\u8d1f\u8d23\u548cIO_T\u4ea4\u4e92\n4.\u4ece\u5e93IO_T\uff0c\u8bfb\u53d6master.info\u6587\u4ef6\u4e2d\u7684\u4fe1\u606f\u83b7\u53d6\u5230IP , PORT , User , Pass, binlog\u7684\u4f4d\u7f6e\u4fe1\u606f\n5.\u4ece\u5e93I0 T\u8bf7\u6c42\u8fde\u63a5\u4e3b\u5e93,\u4e3b\u5e93\u4e13\u95e8\u63d0\u4f9b\u4e00\u4e2aDUMP_T,\u8d1f\u8d23\u548cIO_T\u4ea4\u4e92\n6. IO_ T\u6839\u636ebinlog\u7684\u4f4d\u7f6e\u4fe1\u606f(mysql-bin.000004 \uff0c444) ,\u8bf7\u6c42\u4e3b\u5e93\u65b0\u7684binlog\n7.\u4e3b\u5e93\u901a\u8fc7DUMP_T\u5c06\u6700\u65b0\u7684binlog,\u901a\u8fc7\u7f51\u7edcTP\u7ed9\u4ece\u5e93\u768410T\n8.IO_T\u63a5\u6536\u5230\u65b0\u7684binlog\u65e5\u5fd7,\u5b58\u50a8\u5230TCP\/IP\u7f13\u5b58,\u7acb\u5373\u8fd4\u56deACK\u7ed9\u4e3b\u5e93,\u5e76\u66f4master.info\n9.I0_T\u5c06TCP\/IP\u7f13\u5b58\u4e2d\u6570\u636e,\u8f6c\u50a8\u5230\u78c1\u76d8relay1og\u4e2d.\n10.SQL_T\u8bfb\u53d6relay.info\u4e2d\u7684\u4fe1\u606f,\u83b7\u53d6\u5230\u4e0a\u6b21\u5df1\u7ecf\u5e94\u7528\u8fc7\u7684relaylog\u7684\u4f4d\u7f6e\u4fe1\u606f\n11.SQI_T\u4f1a\u6309\u7167\u4e0a\u6b21\u7684\u4f4d\u7f6e\u70b9\u56de\u653e\u6700\u65b0\u7684relay1og,\u518d\u6b21\u66f4\u65b0relay.info\u4fe1\u606f\n12.\u4ece\u5e93\u4f1a\u81ea\u52a8purge\u5e94\u7528\u8fc7relay\u8fdb\u884c\u5b9a\u671f\u6e05\u7406\n\u8865\u5145\u8bf4\u660e:\n--\u65e6\u4e3b\u4ece\u590d\u5236\u6784\u5efa\u6210\u529f,\u4e3b\u5e93\u5f53\u4e2d\u53d1\u751f\u4e86\u65b0\u7684\u53d8\u5316,\u90fd\u4f1a\u901a\u8fc7dump_T\u53d1\u9001\u4fe1\u53f7\u7ed9I0_T,\u589e\u5f3a\u4e86\u4e3b\u4ece\u590d\u5236\u7684\u5b9e\u65f6\u6027.\n\n<\/code><\/pre>\n<h1>5. \u4e3b\u4ece\u6545\u969c\u76d1\u63a7\\\u5206\u6790\\\u5904\u7406 <strong>*<\/strong><\/h1>\n<h2>5.1 \u7ebf\u7a0b\u76f8\u5173\u76d1\u63a7<\/h2>\n<h2>\u4e3b\u5e93:<\/h2>\n<pre><code class=\"language-css\" lang=\"css\">show full processlist;\n\u6bcf\u4e2a\u4ece\u5e93\u90fd\u4f1a\u6709\u4e00\u884cdump\u76f8\u5173\u7684\u4fe1\u606f\nHOSTS: \ndb01:47176\nState:\nMaster has sent all binlog to slave; waiting for more updates\n\u5982\u679c\u73b0\u5b9e\u975e\u4ee5\u4e0a\u4fe1\u606f,\u8bf4\u660e\u4e3b\u4ece\u4e4b\u95f4\u7684\u5173\u7cfb\u51fa\u73b0\u4e86\u95ee\u9898    \n<\/code><\/pre>\n<h2>\u4ece\u5e93:<\/h2>\n<pre><code class=\"language-mysql\" lang=\"mysql\">mysql&gt;show slave status \\G\n*************************** 1. row ***************************\n\u4e3b\u5e93\u76f8\u5173\u7684\u4fe1\u606f\nSlave_IO_State: Waiting for master to send event\nMaster_Host: 10.0.0.51\nMaster_User: repl\nMaster_Port: 3307\nConnect_Retry: 10\nMaster_Log_File: mysql-bin.000004\nRead_Master_Log_Pos: 316\n          \n\u4ece\u5e93relay\u5e94\u7528\u6709\u5173\u4fe1\u606f\uff08relay.info\uff09          \nRelay_Log_File: db01-relay-bin.000002\nRelay_Log_Pos: 482\nRelay_Master_Log_File: mysql-bin.000004\n        \n\u4ece\u5e93\u7ebf\u7a0b\u8fd0\u884c\u72b6\u6001        \nSlave_IO_Running: Yes\nSlave_SQL_Running: Yes\nLast_IO_Errno: 0\nLast_IO_Error: \nLast_SQL_Errno: 0\nLast_SQL_Error: \n            \n\u8fc7\u6ee4\u590d\u5236\u6709\u5173\u4fe1\u606f           \nReplicate_Do_DB: \nReplicate_Ignore_DB: \nReplicate_Do_Table: \nReplicate_Ignore_Table: \nReplicate_Wild_Do_Table: \nReplicate_Wild_Ignore_Table: \n\n\n\u4ece\u5e93\u5ef6\u65f6\u4e3b\u5e93\u7684\u65f6\u95f4\uff08\u79d2\uff09\nSeconds_Behind_Master: 0\n\n\u5ef6\u65f6\u4ece\u5e93\nSQL_Delay: 0\nSQL_Remaining_Delay: NULL\n\nGTID\u590d\u5236\u6709\u5173\u4fe1\u606f\nRetrieved_Gtid_Set: \nExecuted_Gtid_Set: \nAuto_Position: 0\n\n<\/code><\/pre>\n<h2>\u4e3b\u5e93\u76f8\u5173\u4fe1\u606f\u76d1\u63a7<\/h2>\n<pre><code class=\"language-css\" lang=\"css\">Master_Host: 10.0.0.51\nMaster_User: repl\nMaster_Port: 3307\nMaster_Log_File: mysql-bin.000005\nRead_Master_Log_Pos: 444\n<\/code><\/pre>\n<h2>\u4ece\u5e93\u4e2d\u7ee7\u65e5\u5fd7\u7684\u5e94\u7528\u72b6\u6001<\/h2>\n<pre><code class=\"language-css\" lang=\"css\">Relay_Log_File: db01-relay-bin.000002\nRelay_Log_Pos: 485\n<\/code><\/pre>\n<h2>\u4ece\u5e93\u590d\u5236\u7ebf\u7a0b\u6709\u5173\u7684\u72b6\u6001<\/h2>\n<pre><code class=\"language-undefined\" lang=\"undefined\">Slave_IO_Running: Yes\nSlave_SQL_Running: Yes\nLast_IO_Errno: 0\nLast_IO_Error: \nLast_SQL_Errno: 0\nLast_SQL_Error: \n<\/code><\/pre>\n<h2>\u8fc7\u6ee4\u590d\u5236\u6709\u5173\u7684\u72b6\u6001<\/h2>\n<pre><code class=\"language-undefined\" lang=\"undefined\">Replicate_Do_DB: \nReplicate_Ignore_DB: \nReplicate_Do_Table: \nReplicate_Ignore_Table: \nReplicate_Wild_Do_Table: \nReplicate_Wild_Ignore_Table: \n<\/code><\/pre>\n<h2>\u4e3b\u4ece\u5ef6\u65f6\u76f8\u5173\u72b6\u6001(\u975e\u4eba\u4e3a)<\/h2>\n<pre><code class=\"language-undefined\" lang=\"undefined\">Seconds_Behind_Master: 0\n<\/code><\/pre>\n<h2>\u5ef6\u65f6\u4ece\u5e93\u6709\u5173\u7684\u72b6\u6001(\u4eba\u4e3a)<\/h2>\n<pre><code class=\"language-cpp\" lang=\"cpp\">SQL_Delay: 0\nSQL_Remaining_Delay: NULL\n<\/code><\/pre>\n<h2>GTID \u590d\u5236\u6709\u5173\u7684\u72b6\u6001<\/h2>\n<pre><code class=\"language-undefined\" lang=\"undefined\">Retrieved_Gtid_Set: \nExecuted_Gtid_Set: \nAuto_Position: 0\n<\/code><\/pre>\n<h2>5.2 \u4e3b\u4ece\u590d\u5236\u6545\u969c\u5206\u6790<\/h2>\n<h3>5.2.1 IO<\/h3>\n<h4>5.2.1.1 \u8fde\u63a5\u4e3b\u5e93<\/h4>\n<pre><code class=\"language-csharp\" lang=\"csharp\">(1) \u7528\u6237 \u5bc6\u7801  IP  port\nLast_IO_Error: error reconnecting to master 'repl@10.0.0.51:3307' - retry-time: 10  retries: 7\n[root@db01 ~]# mysql -urepl  -p123333  -h 10.0.0.51 -P 3307\nERROR 1045 (28000): Access denied for user 'repl'@'db01' (using password: YES)\n\n\u539f\u56e0:\n\u5bc6\u7801\u9519\u8bef \n\u7528\u6237\u9519\u8bef \nskip_name_resolve\n\u5730\u5740\u9519\u8bef\n\u7aef\u53e3\n<\/code><\/pre>\n<p><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/\/\/upload-images.jianshu.io\/upload_images\/16956686-2d45278fb16e4d69.png?imageMogr2\/auto-orient\/strip|imageView2\/2\/w\/932\/format\/webp'><img class=\"lazyload lazyload-style-7\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/\/\/upload-images.jianshu.io\/upload_images\/16956686-2d45278fb16e4d69.png?imageMogr2\/auto-orient\/strip|imageView2\/2\/w\/932\/format\/webp\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"img\" \/><\/div><\/p>\n<p>image.png<\/p>\n<p><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/\/\/upload-images.jianshu.io\/upload_images\/16956686-0ed17c75c871d787.png?imageMogr2\/auto-orient\/strip|imageView2\/2\/w\/975\/format\/webp'><img class=\"lazyload lazyload-style-7\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/\/\/upload-images.jianshu.io\/upload_images\/16956686-0ed17c75c871d787.png?imageMogr2\/auto-orient\/strip|imageView2\/2\/w\/975\/format\/webp\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"img\" \/><\/div><\/p>\n<p>image.png<\/p>\n<h2>\u5904\u7406\u65b9\u6cd5<\/h2>\n<pre><code class=\"language-undefined\" lang=\"undefined\">stop  slave  \nreset slave all \nchange master to \nstart slave\n<\/code><\/pre>\n<h2>\u4e3b\u5e93\u8fde\u63a5\u6570\u4e0a\u9650,\u6216\u8005\u662f\u4e3b\u5e93\u592a\u7e41\u5fd9<\/h2>\n<pre><code class=\"language-dart\" lang=\"dart\">show slave  staus \\G \nLast_IO_Errno: 1040\nLast_IO_Error: error reconnecting to master 'repl@10.0.0.51:3307' - retry-time: 10  retries: 7\n\u5904\u7406\u601d\u8def:\n\u62ff\u590d\u5236\u7528\u6237,\u624b\u5de5\u8fde\u63a5\u4e00\u4e0b\n\n[root@db01 ~]# mysql -urepl -p123 -h 10.0.0.51 -P 3307 \nmysql: [Warning] Using a password on the command line interface can be insecure.\nERROR 1040 (HY000): Too many connections\n\u5904\u7406\u65b9\u6cd5:\nmysql&gt;set global max_connections=300;\n\n(3) \u9632\u706b\u5899,\u7f51\u7edc\u4e0d\u901a\n<\/code><\/pre>\n<h4>5.2.1.2 \u8bf7\u6c42\u4e8c\u8fdb\u5236\u65e5\u5fd7<\/h4>\n<pre><code class=\"language-csharp\" lang=\"csharp\">\u4e3b\u5e93\u7f3a\u5931\u65e5\u5fd7\n\u4ece\u5e93\u65b9\u9762,\u4e8c\u8fdb\u5236\u65e5\u5fd7\u4f4d\u7f6e\u70b9\u4e0d\u5bf9\nLast_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'could not find next log; the first event 'mysql-bin.000001' at 154, the last event read from '\/data\/3307\/data\/mysql-bin.000002' at 154, the last byte read from '\/data\/3307\/data\/mysql-bin.000002' at 154.'\n<\/code><\/pre>\n<p><div class='fancybox-wrapper lazyload-container-unload' data-fancybox='post-images' href='https:\/\/\/\/upload-images.jianshu.io\/upload_images\/16956686-78c7eaaacd175fc0.png?imageMogr2\/auto-orient\/strip|imageView2\/2\/w\/1200\/format\/webp'><img class=\"lazyload lazyload-style-7\" src=\"data:image\/svg+xml;base64,PCEtLUFyZ29uTG9hZGluZy0tPgo8c3ZnIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgc3Ryb2tlPSIjZmZmZmZmMDAiPjxnPjwvZz4KPC9zdmc+\"  decoding=\"async\" data-original=\"https:\/\/\/\/upload-images.jianshu.io\/upload_images\/16956686-78c7eaaacd175fc0.png?imageMogr2\/auto-orient\/strip|imageView2\/2\/w\/1200\/format\/webp\" src=\"data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB\/AAffA0nNPuCLAAAAAElFTkSuQmCC\" alt=\"img\" \/><\/div><\/p>\n<p>image.png<\/p>\n<pre><code class=\"language-undefined\" lang=\"undefined\">\u6ce8\u610f: \u5728\u4e3b\u4ece\u590d\u5236\u73af\u5883\u4e2d,\u4e25\u4ee4\u7981\u6b62\u4e3b\u5e93\u4e2dreset master; \u53ef\u4ee5\u9009\u62e9expire \u8fdb\u884c\u5b9a\u671f\u6e05\u7406\u4e3b\u5e93\u4e8c\u8fdb\u5236\u65e5\u5fd7\n\u89e3\u51b3\u65b9\u6848:\nstop  slave  \nreset slave all \nchange master to \nstart slave\n<\/code><\/pre>\n<h2>5.2.2 SQL \u7ebf\u7a0b\u6545\u969c<\/h2>\n<h3>SQL\u7ebf\u7a0b\u529f\u80fd\uff1a<\/h3>\n<pre><code class=\"language-cpp\" lang=\"cpp\">(1)\u8bfb\u5199relay-log.info \n(2)relay-log\u635f\u574f,\u65ad\u8282,\u627e\u4e0d\u5230\n(3)\u63a5\u6536\u5230\u7684SQL\u65e0\u6cd5\u6267\u884c\n<\/code><\/pre>\n<h4>\u5bfc\u81f4SQL\u7ebf\u7a0b\u6545\u969c\u539f\u56e0\u5206\u6790\uff1a<\/h4>\n<pre><code class=\"language-rust\" lang=\"rust\">1. \u7248\u672c\u5dee\u5f02\uff0c\u53c2\u6570\u8bbe\u5b9a\u4e0d\u540c\uff0c\u6bd4\u5982\uff1a\u6570\u636e\u7c7b\u578b\u7684\u5dee\u5f02\uff0cSQL_MODE\u5f71\u54cd\n2.\u8981\u521b\u5efa\u7684\u6570\u636e\u5e93\u5bf9\u8c61,\u5df2\u7ecf\u5b58\u5728\n3.\u8981\u5220\u9664\u6216\u4fee\u6539\u7684\u5bf9\u8c61\u4e0d\u5b58\u5728  \n4.DML\u8bed\u53e5\u4e0d\u7b26\u5408\u8868\u5b9a\u4e49\u53ca\u7ea6\u675f\u65f6.  \n\u5f52\u6839\u63ed\u5e95\u7684\u539f\u56e0\u90fd\u662f\u7531\u4e8e\u4ece\u5e93\u53d1\u751f\u4e86\u5199\u5165\u64cd\u4f5c.\nLast_SQL_Error: Error 'Can't create database 'db'; database exists' on query. Default database: 'db'. Query: 'create database db'\n<\/code><\/pre>\n<h4>\u5408\u7406\u7684\u5904\u7406\u65b9\u6cd5<\/h4>\n<pre><code>\u628a\u63e1\u4e00\u4e2a\u539f\u5219,\u4e00\u5207\u4ee5\u4e3b\u5e93\u4e3a\u51c6\u8fdb\u884c\u89e3\u51b3.\n\u5982\u679c\u51fa\u73b0\u95ee\u9898,\u5c3d\u91cf\u8fdb\u884c\u53cd\u64cd\u4f5c\n\u6700\u76f4\u63a5\u7a33\u59a5\u529e\u6cd5,\u91cd\u65b0\u6784\u5efa\u4e3b\u4ece\n<\/code><\/pre>\n<h4>\u66b4\u529b\u7684\u5904\u7406\u65b9\u6cd5(\u4ee5\u4ece\u5e93\u4e3a\u6838\u5fc3\u7684\u5904\u7406\u65b9\u6848)\uff1a<\/h4>\n<pre><code class=\"language-csharp\" lang=\"csharp\">\u65b9\u6cd5\u4e00\uff1a\nstop slave; \nset global sql_slave_skip_counter = 1;\n#\u5c06\u540c\u6b65\u6307\u9488\u5411\u4e0b\u79fb\u52a8\u4e00\u4e2a\uff0c\u5982\u679c\u591a\u6b21\u4e0d\u540c\u6b65\uff0c\u53ef\u4ee5\u91cd\u590d\u64cd\u4f5c\u3002\nstart slave;\n\u65b9\u6cd5\u4e8c\uff1a\n\/etc\/my.cnf\nslave-skip-errors = 1032,1062,1007\n\u5e38\u89c1\u9519\u8bef\u4ee3\u7801:\n1007:\u5bf9\u8c61\u5df2\u5b58\u5728\n1032:\u65e0\u6cd5\u6267\u884cDML\n1062:\u4e3b\u952e\u51b2\u7a81,\u6216\u7ea6\u675f\u51b2\u7a81\n\n\u4f46\u662f\uff0c\u4ee5\u4e0a\u64cd\u4f5c\u6709\u65f6\u662f\u6709\u98ce\u9669\u7684\uff0c\u6700\u5b89\u5168\u7684\u505a\u6cd5\u5c31\u662f\u91cd\u65b0\u6784\u5efa\u4e3b\u4ece\u3002\u628a\u63e1\u4e00\u4e2a\u539f\u5219,\u4e00\u5207\u4ee5\u4e3b\u5e93\u4e3a\u4e3b.\n\n\n<\/code><\/pre>\n<h4>\u4e00\u52b3\u6c38\u9038\u7684\u65b9\u6cd5:<\/h4>\n<pre><code class=\"language-dart\" lang=\"dart\">(1) \u53ef\u4ee5\u8bbe\u7f6e\u4ece\u5e93\u53ea\u8bfb.\nmysql&gt;show variables like '%read_only%';\nread_only\nsuper_read_only\n\u6ce8\u610f\uff1a\n\u53ea\u4f1a\u5f71\u54cd\u5230\u666e\u901a\u7528\u6237\uff0c\u5bf9\u7ba1\u7406\u5458\u7528\u6237\u65e0\u6548\u3002\n(2)\u52a0\u4e2d\u95f4\u4ef6\u8bfb\u5199\u5206\u79bb\u3002\natla s\nmycat\nProxySQL\nMaxscale\n\n<\/code><\/pre>\n<h1>6. \u4e3b\u4ece\u5ef6\u65f6\u76d1\u63a7\u53ca\u539f\u56e0 <strong>*<\/strong><\/h1>\n<pre><code class=\"language-undefined\" lang=\"undefined\">\u4e3b\u5e93\u505a\u4e86\u4fee\u6539\u64cd\u4f5c,\u4ece\u5e93\u6bd4\u8f83\u957f\u65f6\u95f4\u624d\u80fd\u8ffd\u4e0a.\n<\/code><\/pre>\n<h2>6.1 \u5916\u5728\u56e0\u7d20<\/h2>\n<pre><code class=\"language-undefined\" lang=\"undefined\">\u7f51\u7edc \n\u4e3b\u4ece\u786c\u4ef6\u5dee\u5f02\u8f83\u5927\n\u7248\u672c\u5dee\u5f02\n\u53c2\u6570\u56e0\u7d20\n<\/code><\/pre>\n<h2>6.2 \u4e3b\u5e93<\/h2>\n<pre><code class=\"language-css\" lang=\"css\">(1) \u4e8c\u8fdb\u5236\u65e5\u5fd7\u5199\u5165\u4e0d\u53ca\u65f6\n[rep]&gt;select @@sync_binlog;\nsync_binlog=1\n(2) CR\u7684\u4e3b\u4ece\u590d\u5236\u4e2d,binlog_dump\u7ebf\u7a0b,\u4e8b\u4ef6\u4e3a\u5355\u5143,\u4e32\u884c\u4f20\u9001\u4e8c\u8fdb\u5236\u65e5\u5fd7(5.6 5.5)\n1. \u4e3b\u5e93\u5e76\u53d1\u4e8b\u52a1\u91cf\u5927,\u4e3b\u5e93\u53ef\u4ee5\u5e76\u884c,\u4f20\u9001\u65f6\u662f\u4e32\u884c\n2. \u4e3b\u5e93\u53d1\u751f\u4e86\u5927\u4e8b\u52a1,\u7531\u4e8e\u662f\u4e32\u884c\u4f20\u9001,\u4f1a\u4ea7\u751f\u963b\u585e\u540e\u7eed\u7684\u4e8b\u52a1.\n\n(3)\u4e3b\u5e93\u6781\u5176\u7e41\u5fd9\uff0c\u6162\u8bed\u53e5\uff0c\u9501\u7b49\u5f85\uff0c\u4ece\u5e93\u4e2a\u6570\uff0c\u7f51\u7edc\u5ef6\u65f6\n\n\u89e3\u51b3\u65b9\u6848:\n1. 5.6 \u5f00\u59cb,\u5f00\u542fGTID,\u5b9e\u73b0\u4e86GC(group commit)\u673a\u5236,\u53ef\u4ee5\u5e76\u884c\u4f20\u8f93\u65e5\u5fd7\u7ed9\u4ece\u5e93IO\n2. 5.7 \u5f00\u59cb,\u4e0d\u5f00\u542fGTID,\u4f1a\u81ea\u52a8\u7ef4\u62a4\u533f\u540d\u7684GTID,\u4e5f\u80fd\u5b9e\u73b0GC,\u6211\u4eec\u5efa\u8bae\u8fd8\u662f\u8ba4\u4e3a\u5f00\u542fGTID\n3. \u5927\u4e8b\u52a1\u62c6\u6210\u591a\u4e2a\u5c0f\u4e8b\u52a1,\u53ef\u4ee5\u6709\u6548\u7684\u51cf\u5c11\u4e3b\u4ece\u5ef6\u65f6.\n<\/code><\/pre>\n<h2>6.3 \u4ece\u5e93<\/h2>\n<pre><code class=\"language-text\" lang=\"text\">\uff081\uff09SQL\u7ebf\u7a0b\u5bfc\u81f4\u7684\u4e3b\u4ece\u5ef6\u65f6\uff0c\u4f20\u7edf\u590d\u5236(Classic)\u4e2d,\u7531\u4e8e\u662f\u5355SQL\u7ebf\u7a0b,\u5bfc\u81f4,\u4e0d\u7ba1\u4f20\u7684\u65e5\u5fd7\u6709\u591a\u5c11,\u53ea\u80fd\u4e00\u6b21\u6267\u884c\u4e00 \u4e2a\u4e8b\u52a1.\n1. \u4e3b\u5e93\u5982\u679c\u5e76\u53d1\u4e8b\u52a1\u91cf\u8f83\u5927,\u4ece\u5e93\u53ea\u80fd\u4e32\u884c\u56de\u653e\n2. \u4e3b\u5e93\u53d1\u751f\u4e86\u5927\u4e8b\u52a1,\u4f1a\u963b\u585e\u540e\u7eed\u7684\u6240\u6709\u7684\u4e8b\u52a1\u7684\u8fd0\u884c\n\n\n\u89e3\u51b3\u65b9\u6848:\n1. 5.6 \u7248\u672c\u5f00\u542fGTID\u4e4b\u540e,\u52a0\u5165\u4e86SQL\u591a\u7ebf\u7a0b\u7684\u7279\u6027,\u4f46\u662f\u53ea\u80fd\u9488\u5bf9\u4e0d\u540c\u5e93(database)\u4e0b\u7684\u4e8b\u52a1\u8fdb\u884c\u5e76\u53d1\u56de\u653e.\n2. 5.7 \u7248\u672c\u5f00\u59cbGTID\u4e4b\u540e,\u5728SQL9+**********************************-\u65b9\u9762,\u63d0\u4f9b\u4e86\u57fa\u4e8e\u903b\u8f91\u65f6\u949f(logical_clock),binlog\u52a0\u5165\u4e86seq_no\u673a\u5236,\u771f\u6b63\u5b9e\u73b0\u4e86\u57fa\u4e8e\u4e8b\u52a1\u7ea7\u522b\u7684\u5e76\u53d1\u56de\u653e,\u8fd9\u79cd\u6280\u672f\u6211\u4eec\u628a\u5b83\u79f0\u4e4b\u4e3aMTS(enhanced multi-threaded slave).\n3. \u5927\u4e8b\u52a1\u62c6\u6210\u591a\u4e2a\u5c0f\u4e8b\u52a1,\u53ef\u4ee5\u6709\u6548\u7684\u51cf\u5c11\u4e3b\u4ece\u5ef6\u65f6.\n\n\uff082\uff09\u4e3b\u4ece\u786c\u4ef6\u5dee\u5f02\u592a\u5927\n\uff083\uff09\u4e3b\u4ece\u7684\u53c2\u6570\u914d\u7f6e\n\uff084\uff09\u4ece\u5e93\u548c\u4e3b\u5e93\u7d22\u5f15\u4e0d\u4e00\u81f4\n\uff085\uff09\u4e3b\u4ece\u7248\u672c\u4e0d\u540c\n<\/code><\/pre>\n<h3>\u4e3b\u4ece\u5ef6\u65f6\u7684\u76d1\u63a7:<\/h3>\n<pre><code>mysq1&gt; show slave status\\G\n\nSeconds Behind Master :0\n<\/code><\/pre>\n<p>\u4e3b\u5e93\u65b9\u9762\u539f\u56e0\u7684\u76d1\u63a7\uff1a<\/p>\n<pre><code>\u4e3b\u5e93:\nmysq1&gt; show master status;\nFile:mysq1-bin.000001\nPosition: 1373\n\n\u4ece\u5e93\uff1a\nMaster_Log_File:mysql-bin.000001\nRead Master Log Pos :1373\n<\/code><\/pre>\n<p>\u4ece\u5e93\u65b9\u9762\u539f\u56e0\u7684\u76d1\u63a7\uff1a<\/p>\n<pre><code>\u62ff\u4e86\u591a\u5c11:\nMaster_Log_File: mysql-bin.000001\nRead Master Log Pos: 1373\n\n\u6267\u884c\u4e86\u591a\u5c11:\nRelay_Log_File: db01-relay-bin.000004\nRelay_Log_Pos: 320\n\nExec Mas ter_Log_Pos:691000\nRelay_Log_Space: 691718 \n\n<\/code><\/pre>\n<h1>7. \u5c0f\u7ed3<\/h1>\n<pre><code class=\"language-csharp\" lang=\"csharp\">1. \u4e3b\u4ece\u590d\u5236\u539f\u7406\n2. \u4e3b\u4ece\u590d\u5236\u6545\u969c\n3. \u4e3b\u4ece\u5ef6\u65f6\uff1agroup commit    MTS  \n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>0.\u4f01\u4e1a\u9ad8\u53ef\u7528\u6027\u6807\u51c6 *** 0.1 \u5168\u5e74\u65e0\u6545\u969c\u7387(\u975e\u8ba1\u5212\u5185\u6545\u969c\u505c\u673a) 99.9% &#8212;-&gt; 0.00 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-65","post","type-post","status-publish","format-standard","hentry","category-mysql"],"_links":{"self":[{"href":"https:\/\/daishen.ltd\/index.php?rest_route=\/wp\/v2\/posts\/65","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/daishen.ltd\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/daishen.ltd\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/daishen.ltd\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/daishen.ltd\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=65"}],"version-history":[{"count":4,"href":"https:\/\/daishen.ltd\/index.php?rest_route=\/wp\/v2\/posts\/65\/revisions"}],"predecessor-version":[{"id":72,"href":"https:\/\/daishen.ltd\/index.php?rest_route=\/wp\/v2\/posts\/65\/revisions\/72"}],"wp:attachment":[{"href":"https:\/\/daishen.ltd\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=65"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/daishen.ltd\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=65"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/daishen.ltd\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=65"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}