杭州校区切换校区

新闻资讯

  • news

    循序渐进学习如何在 MariaDB 中配置主从复制

    发布时间:2018-02-05

    <span style="color:#666666;font-family:&quot;font-size:14px;background-color:#FFFFFF;">复制是用于为我们的数据库创建多个副本,这些副本可以在其它数据库上用于运行查询,像一些非常繁重的查询可能会影响主数据库服务器的性能,或者我们可以使用它来做数据冗余,或者兼具以上两个目的。我们可以将这个过程自动化,即主服务器到从服务器的复制过程自动进行。执行备份而不影响在主服务器上的写操作。</span><br class=""><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">本文导航◈&nbsp;</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">第 1 步 - 主服务器配置<span class="" style="color:#666666;line-height:28px;">18%</span>◈</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">第 2 步 - 创建一个数据库备份,并将它移动到从服务器上<span class="" style="color:#666666;line-height:28px;">40%</span>◈</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">&nbsp;第 3 步:配置从服务器<span class="" style="color:#666666;line-height:28px;">51%</span>◈&nbsp;</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">第 4 步:启动复制<span class="" style="color:#666666;line-height:28px;">65%</span>◈</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">&nbsp;第 5 步:测试复制<span class="" style="color:#666666;line-height:28px;">75%</span></p><span style="font-family:&quot;color:#666666;line-height:28px;font-size:14px;background-color:#FFFFFF;"> </span><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">在我们前面的教程中,我们已经学习了&nbsp;<span style="color:#4D8AD8;line-height:28px;"><a href="http://mp.weixin.qq.com/s?__biz=MjM5NjQ4MjYwMQ==&amp;mid=2664608831&amp;idx=3&amp;sn=1247dddd0a49b42d6759c578bdc58093&amp;chksm=bdce8f798ab9066fbb2f7de6e41a0dcfcd675b50a6a49863477cf8fcc3bb640445ef5b52603c&amp;scene=21#wechat_redirect" data-ke-src="http://mp.weixin.qq.com/s?__biz=MjM5NjQ4MjYwMQ==&amp;amp;mid=2664608831&amp;amp;idx=3&amp;amp;sn=1247dddd0a49b42d6759c578bdc58093&amp;amp;chksm=bdce8f798ab9066fbb2f7de6e41a0dcfcd675b50a6a49863477cf8fcc3bb640445ef5b52603c&amp;amp;scene=21#wechat_redirect">如何安装和配置 MariaDB</a></span><span class="" style="color:#FFFFFF;line-height:1em;font-size:9px;vertical-align:super;background-color:#666666;">[1]</span>,也学习了&nbsp;<span style="color:#4D8AD8;line-height:28px;">管理 MariaDB 的一些基础命令</span><span class="" style="color:#FFFFFF;line-height:1em;font-size:9px;vertical-align:super;background-color:#666666;">[2]</span>。现在我们来学习,如何在 MariaDB 服务器上配置一个主从复制。</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">复制是用于为我们的数据库创建多个副本,这些副本可以在其它数据库上用于运行查询,像一些非常繁重的查询可能会影响主数据库服务器的性能,或者我们可以使用它来做数据冗余,或者兼具以上两个目的。我们可以将这个过程自动化,即主服务器到从服务器的复制过程自动进行。执行备份而不影响在主服务器上的写操作。</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">因此,我们现在去配置我们的主-从复制,它需要两台安装了 MariaDB 的机器。它们的 IP 地址如下:</p><span style="color:#666666;font-family:&quot;font-size:14px;background-color:#FFFFFF;">◈&nbsp;</span><strong>主服务器 -</strong><span style="color:#666666;font-family:&quot;font-size:14px;background-color:#FFFFFF;">&nbsp;192.168.1.120&nbsp;</span><strong>主机名 -</strong><span style="color:#666666;font-family:&quot;font-size:14px;background-color:#FFFFFF;">&nbsp;master.ltechlab.com◈&nbsp;</span><strong>从服务器 -</strong><span style="color:#666666;font-family:&quot;font-size:14px;background-color:#FFFFFF;">&nbsp;192.168.1.130&nbsp;</span><strong>主机名 -</strong><span style="color:#666666;font-family:&quot;font-size:14px;background-color:#FFFFFF;">&nbsp;slave.ltechlab.com</span><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">MariaDB 安装到这些机器上之后,我们继续进行本教程。如果你需要安装和配置 MariaDB 的教程,请查看<span style="color:#4D8AD8;line-height:28px;"><a href="http://mp.weixin.qq.com/s?__biz=MjM5NjQ4MjYwMQ==&amp;mid=2664608831&amp;idx=3&amp;sn=1247dddd0a49b42d6759c578bdc58093&amp;chksm=bdce8f798ab9066fbb2f7de6e41a0dcfcd675b50a6a49863477cf8fcc3bb640445ef5b52603c&amp;scene=21#wechat_redirect" data-ke-src="http://mp.weixin.qq.com/s?__biz=MjM5NjQ4MjYwMQ==&amp;amp;mid=2664608831&amp;amp;idx=3&amp;amp;sn=1247dddd0a49b42d6759c578bdc58093&amp;amp;chksm=bdce8f798ab9066fbb2f7de6e41a0dcfcd675b50a6a49863477cf8fcc3bb640445ef5b52603c&amp;amp;scene=21#wechat_redirect"><span style="color:#C40F0F;line-height:28px;">这个教程</span></a></span><span class="" style="color:#FFFFFF;line-height:1em;font-size:9px;vertical-align:super;background-color:#666666;">[1]</span>。</p><p class="" style="font-family:&quot;color:#FFFFFF;font-size:1.4em;background-color:#3F51B5;">第 1 步 - 主服务器配置</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">我们现在进入到 MariaDB 中的一个命名为&nbsp;important&nbsp;的数据库,它将被复制到我们的从服务器。为开始这个过程,我们编辑名为&nbsp;/etc/my.cnf&nbsp;的文件,它是 MariaDB 的配置文件。</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ </span><span class="" style="color:#E28964;line-height:28px;">vi</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#B8FFB8;line-height:28px;">/</span><span class="" style="color:#B8FFB8;line-height:28px;">etc</span><span class="" style="color:#B8FFB8;line-height:28px;">/</span><span class="" style="color:#E28964;line-height:28px;">my</span><span class="" style="color:#B8FFB8;line-height:28px;">.</span><span class="" style="color:#B8FFB8;line-height:28px;">cnf</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">在这个文件中找到&nbsp;[mysqld]&nbsp;节,然后输入如下内容:</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">[</span><span class="" style="color:#B8FFB8;line-height:28px;">mysqld</span><span class="" style="color:#B8FFB8;line-height:28px;">]</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">log</span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">bin</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">server_id</span><span class="" style="color:#B8FFB8;line-height:28px;">=</span><span class="" style="color:#3387CC;line-height:28px;">1</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">replicate</span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#E28964;line-height:28px;">do</span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">db</span><span class="" style="color:#B8FFB8;line-height:28px;">=</span><span class="" style="color:#B8FFB8;line-height:28px;">important</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">bind</span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">address</span><span class="" style="color:#B8FFB8;line-height:28px;">=</span><span class="" style="color:#3387CC;line-height:28px;">192.168</span><span class="" style="color:#B8FFB8;line-height:28px;">.</span><span class="" style="color:#3387CC;line-height:28px;">1.120</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">保存并退出这个文件。完成之后,需要重启 MariaDB 服务。</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ </span><span class="" style="color:#E28964;line-height:28px;">systemctl</span><span class="" style="color:#B8FFB8;line-height:28px;"> restart mariadb</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">接下来,我们登入我们的主服务器上的 Mariadb 实例。</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ mysql </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">u root </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">p</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">在它上面创建一个命名为&nbsp;slaveuser&nbsp;的为主从复制使用的新用户,然后运行如下的命令为它分配所需要的权限:</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">STOP SLAVE</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">GRANT REPLICATION SLAVE ON </span><span class="" style="color:#B8FFB8;line-height:28px;">*.*</span><span class="" style="color:#B8FFB8;line-height:28px;"> TO &nbsp;</span><span class="" style="color:#65B042;line-height:28px;">'slaveuser'</span><span class="" style="color:#B8FFB8;line-height:28px;">@</span><span class="" style="color:#65B042;line-height:28px;">'%'</span><span class="" style="color:#B8FFB8;line-height:28px;"> IDENTIFIED BY </span><span class="" style="color:#65B042;line-height:28px;">'iamslave'</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">FLUSH PRIVILEGES</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">FLUSH TABLES WITH READ LOCK</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">SHOW MASTER STATUS</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><span style="color:#C40F0F;line-height:28px;">注意:</span>&nbsp;我们配置主从复制需要&nbsp;MASTER_LOG_FILE&nbsp;和&nbsp;MASTER_LOG_POS&nbsp;的值,它可以通过&nbsp;show master status&nbsp;来获得,因此,你一定要确保你记下了它们的值。</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">这些命令运行完成之后,输入&nbsp;exit&nbsp;退出这个会话。</p><p class="" style="font-family:&quot;color:#FFFFFF;font-size:1.4em;background-color:#3F51B5;">第 2 步 - 创建一个数据库备份,并将它移动到从服务器上</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">现在,我们需要去为我们的数据库&nbsp;important&nbsp;创建一个备份,可以使用&nbsp;mysqldump&nbsp;命令去备份。</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ mysqldump </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">u root </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">p important </span><span class="" style="color:#B8FFB8;line-height:28px;">&gt;</span><span class="" style="color:#B8FFB8;line-height:28px;"> important_backup</span><span class="" style="color:#B8FFB8;line-height:28px;">.</span><span class="" style="color:#B8FFB8;line-height:28px;">sql</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">备份完成后,我们需要重新登录到 MariaDB 数据库,并解锁我们的表。</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ mysql </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">u root </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">p</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ UNLOCK TABLES</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">然后退出这个会话。现在,我们移动我们刚才的备份到从服务器上,它的 IP 地址是:192.168.1.130。</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">在主服务器上的配置已经完成了,现在,我们开始配置从服务器。</p><p class="" style="font-family:&quot;color:#FFFFFF;font-size:1.4em;background-color:#3F51B5;">第 3 步:配置从服务器</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">我们再次去编辑(从服务器上的)&nbsp;/etc/my.cnf&nbsp;文件,找到配置文件中的&nbsp;[mysqld]节,然后输入如下内容:</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">[</span><span class="" style="color:#B8FFB8;line-height:28px;">mysqld</span><span class="" style="color:#B8FFB8;line-height:28px;">]</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">server</span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#E28964;line-height:28px;">id</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#B8FFB8;line-height:28px;">=</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#3387CC;line-height:28px;">2</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">replicate</span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#E28964;line-height:28px;">do</span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">db</span><span class="" style="color:#B8FFB8;line-height:28px;">=</span><span class="" style="color:#B8FFB8;line-height:28px;">important</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">[</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#B8FFB8;line-height:28px;">…]</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">现在,我们恢复我们主数据库的备份到从服务器的 MariaDB 上,运行如下命令:</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ mysql </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">u root </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">p </span><span class="" style="color:#B8FFB8;line-height:28px;">&lt;</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#65B042;line-height:28px;">/data/</span><span class="" style="color:#B8FFB8;line-height:28px;"> important_backup</span><span class="" style="color:#B8FFB8;line-height:28px;">.</span><span class="" style="color:#B8FFB8;line-height:28px;">sql</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">当这个恢复过程结束之后,我们将通过登入到从服务器上的 MariaDB,为数据库&nbsp;important&nbsp;上的用户 'slaveuser' 授权。</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ mysql </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">u root </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">p</span></p></li></ol></pre> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">GRANT ALL PRIVILEGES ON important</span><span class="" style="color:#B8FFB8;line-height:28px;">.*</span><span class="" style="color:#B8FFB8;line-height:28px;"> TO </span><span class="" style="color:#65B042;line-height:28px;">'slaveuser'</span><span class="" style="color:#B8FFB8;line-height:28px;">@</span><span class="" style="color:#65B042;line-height:28px;">'localhost'</span><span class="" style="color:#B8FFB8;line-height:28px;"> WITH GRANT OPTION</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">FLUSH PRIVILEGES</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">接下来,为了这个变化生效,重启 MariaDB。</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ </span><span class="" style="color:#E28964;line-height:28px;">systemctl</span><span class="" style="color:#B8FFB8;line-height:28px;"> restart mariadb</span></p></li></ol></pre> <p class="" style="font-family:&quot;color:#FFFFFF;font-size:1.4em;background-color:#3F51B5;">第 4 步:启动复制</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">记住,我们需要&nbsp;MASTER_LOG_FILE&nbsp;和&nbsp;MASTER_LOG_POS&nbsp;变量的值,它可以通过在主服务器上运行&nbsp;SHOW MASTER STATUS&nbsp;获得。现在登入到从服务器上的 MariaDB,然后通过运行下列命令,告诉我们的从服务器它应该去哪里找主服务器。</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">STOP SLAVE</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">CHANGE MASTER TO MASTER_HOST</span><span class="" style="color:#B8FFB8;line-height:28px;">=</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#65B042;line-height:28px;">'192.168.1.110′, MASTER_USER='</span><span class="" style="color:#B8FFB8;line-height:28px;">slaveuser</span><span class="" style="color:#65B042;line-height:28px;">', MASTER_PASSWORD='</span><span class="" style="color:#B8FFB8;line-height:28px;">iamslave</span><span class="" style="color:#65B042;line-height:28px;">', MASTER_LOG_FILE='</span><span class="" style="color:#B8FFB8;line-height:28px;">mariadb</span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">bin</span><span class="" style="color:#B8FFB8;line-height:28px;">.</span><span class="" style="color:#3387CC;line-height:28px;">000001</span><span class="" style="color:#B8FFB8;line-height:28px;">′,</span><span class="" style="color:#B8FFB8;line-height:28px;"> MASTER_LOG_POS</span><span class="" style="color:#B8FFB8;line-height:28px;">=</span><span class="" style="color:#3387CC;line-height:28px;">460</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">SLAVE START</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">SHOW SLAVE STATUS\G</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><span style="color:#C40F0F;line-height:28px;">注意:</span>&nbsp;请根据你的机器的具体情况来改变主服务器的配置。</p><p class="" style="font-family:&quot;color:#FFFFFF;font-size:1.4em;background-color:#3F51B5;">第 5 步:测试复制</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">我们将在我们的主服务器上创建一个新表来测试主从复制是否正常工作。因此,登入到主服务器上的 MariaDB。</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ mysql </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">u root </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">p</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">选择数据库为&nbsp;important:</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#E28964;line-height:28px;">use</span><span class="" style="color:#B8FFB8;line-height:28px;"> important</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">在这个数据库上创建一个名为&nbsp;test&nbsp;的表:</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">create table </span><span class="" style="color:#E28964;line-height:28px;">test</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#B8FFB8;line-height:28px;">(</span><span class="" style="color:#B8FFB8;line-height:28px;">c </span><span class="" style="color:#E28964;line-height:28px;">int</span><span class="" style="color:#B8FFB8;line-height:28px;">);</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">然后在这个表中插入一些数据:</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">insert into </span><span class="" style="color:#E28964;line-height:28px;">test</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#B8FFB8;line-height:28px;">(</span><span class="" style="color:#B8FFB8;line-height:28px;">c</span><span class="" style="color:#B8FFB8;line-height:28px;">)</span><span class="" style="color:#B8FFB8;line-height:28px;"> value </span><span class="" style="color:#B8FFB8;line-height:28px;">(</span><span class="" style="color:#3387CC;line-height:28px;">1</span><span class="" style="color:#B8FFB8;line-height:28px;">);</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">检索刚才插入的值是否存在:</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">select </span><span class="" style="color:#B8FFB8;line-height:28px;">*</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#E28964;line-height:28px;">from</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#E28964;line-height:28px;">test</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">你将会看到刚才你插入的值已经在这个新建的表中了。</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">现在,我们登入到从服务器的数据库中,查看主从复制是否正常工作。</p> <pre class=""><ol class="list-paddingleft-2"><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ mysql </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">u root </span><span class="" style="color:#B8FFB8;line-height:28px;">-</span><span class="" style="color:#B8FFB8;line-height:28px;">p</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ </span><span class="" style="color:#E28964;line-height:28px;">use</span><span class="" style="color:#B8FFB8;line-height:28px;"> important</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li><li><p><span class="" style="color:#B8FFB8;line-height:28px;">$ select </span><span class="" style="color:#B8FFB8;line-height:28px;">*</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#E28964;line-height:28px;">from</span><span class="" style="color:#B8FFB8;line-height:28px;"> </span><span class="" style="color:#E28964;line-height:28px;">test</span><span class="" style="color:#B8FFB8;line-height:28px;">;</span></p></li></ol></pre> <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">你可以看到与前面在主服务器上的命令输出是一样的。因此,说明我们的主从服务工作正常,没有发生任何问题。</p>
  • news

    4 种方法识别Linux系统 USB 设备

    发布时间:2018-01-29

    <table style="margin:0px 0px 10px;padding:0px;font-family:&quot;font-size:16px;background-color:#FFFFFF;color:#3E3E3E;text-align:center;width:668px;"><tbody><tr><td width="25" style="font-family:&quot;color:#999999;border:1px solid #DDDDDD;font-size:22px;background:#E8E8E8;"><strong><span style="color:#666666;line-height:32px;font-size:16px;">导读</span></strong></td><td style="font-family:&quot;border:1px solid #DDDDDD;"><span style="color:#666666;line-height:32px;"><strong>如果在系统中插入一个设备,尤其是在桌面环境下,比如 USB 设备,它会自动挂载到一个指定目录,一般是在 /media/username/device-label 目录下,之后你就可以进入到该目录下访问那些文件了。然而,在服务器上就不是这么回事了,你必须手动挂载这个设备,并且指定一个挂载点。</strong></span></td></tr></tbody></table><p style="font-family:&quot;font-size:14px;background-color:#FFFFFF;color:#3E3E3E;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"><strong>查询USB设备</strong></span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;">Linux&nbsp;系统使用 /dev 目录下特定的设备文件来标识插入的设备。你会发现该目录下的某些文件,包括 /dev/sda 或者 /dev/hda 表示你的第一个主设备,每个分区使用一个数字来表示,比如 /dev/sda1 或 /dev/hda1 表示主设备的第一个分区等等。</span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"></span></p> <pre><p style="font-size:0.85em;background-color:#F8F8F8;"><span style="color:#666666;line-height:23.8px;">$ ls /dev/sda*</span></p></pre> <p style="font-family:&quot;font-size:14px;text-indent:1em;text-align:justify;color:#333333;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1517189782768.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1517189782768.jpg" alt=""></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"><strong><span style="color:#666666;line-height:24px;font-size:12px;">列出 Linux 系统下所有的设备名</span></strong></span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;">现在让我们来使用下面一些特殊的命令行工具找出设备名。</span></p><p style="font-family:&quot;font-size:14px;background-color:#FFFFFF;color:#3E3E3E;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"><strong>使用 df 命令来找出插入的 USB 设备名</strong><strong></strong></span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;">查看插入你系统里的每一个设备及对应的挂载点,你可以使用下图中的 df 命令检查 Linux 系统磁盘空间使用情况:</span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"></span></p> <pre><p style="font-size:0.85em;background-color:#F8F8F8;"><span style="color:#666666;line-height:23.8px;">$ df -h</span></p></pre> <p style="font-family:&quot;font-size:14px;text-indent:1em;text-align:justify;color:#333333;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1517189796208.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1517189796208.jpg" alt=""></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"><strong><span style="color:#666666;line-height:24px;font-size:12px;">使用 df 命令查找 USB 设备名</span></strong></span></p><p style="font-family:&quot;font-size:14px;background-color:#FFFFFF;color:#3E3E3E;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"><strong>使用 lsblk 命令查找 USB 设备名</strong><strong></strong></span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;">你也可以使用下面的 lsblk 命令(列出块设备)来列出插入你系统里的所有块设备:</span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"></span></p> <pre><p style="background-color:#F8F8F8;"><span style="font-family:Consolas, Inconsolata, Courier, monospace;color:#666666;line-height:28px;"><span style="font-family:&quot;line-height:30px;font-size:15px;">$</span></span><span style="color:#666666;line-height:28px;"> lsblk</span></p></pre> <p style="font-family:&quot;font-size:14px;text-indent:1em;text-align:justify;color:#333333;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1517189808492.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1517189808492.jpg" alt=""></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"><strong><span style="color:#666666;line-height:24px;font-size:12px;">列出 Linux 系统里的块设备</span></strong></span></p><p style="font-family:&quot;font-size:14px;background-color:#FFFFFF;color:#3E3E3E;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"><strong>使用 fdisk 工具识别 USB 设备名</strong><strong></strong></span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;">fdisk 是一个功能强大的工具,用于查看你系统中的所有分区表,包括所有的 USB 设备,使用 root 权限执行如下命令:</span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"></span></p> <pre><p style="font-size:0.85em;background-color:#F8F8F8;"><span style="color:#666666;line-height:30px;font-size:15px;">$ <span style="line-height:30px;">sudo fdisk -l</span></span></p></pre> <p style="font-family:&quot;font-size:14px;text-indent:1em;text-align:justify;color:#333333;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1517189822372.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1517189822372.jpg" alt=""></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"><strong><span style="color:#666666;line-height:24px;font-size:12px;">列出块设备的分区表</span></strong></span></p><p style="font-family:&quot;font-size:14px;background-color:#FFFFFF;color:#3E3E3E;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"><strong>使用 dmesg 命令来识别出 USB 设备名</strong><strong></strong></span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;">dmesg 是一个用于打印或者控制内核环形缓冲区(kernel ring buffer)的重要命令。环形缓冲区是一种数据结构,它存放着内核操作数据的信息。</span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;">运行如下命令来查看内核操作信息,它同时也会打印出 USB 设备的信息:</span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"></span></p> <pre><p style="font-size:0.85em;background-color:#F8F8F8;"><span style="color:#666666;line-height:23.8px;">$ dmesg</span></p></pre> <p style="font-family:&quot;font-size:14px;text-indent:1em;text-align:justify;color:#333333;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1517189835453.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1517189835453.jpg" alt=""></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;"><strong>dmesg – 打印 USB 设备名</strong></span></p><p style="font-family:&quot;font-size:14px;text-indent:1em;color:#333333;background-color:#FFFFFF;"><span style="font-family:&quot;color:#666666;line-height:30px;font-size:15px;">以上就是这篇文章中提及到的所有命令,我们在命令行下使用不同的方法来找出 USB 设备名,你也可以跟大家分享下实现这个目的的其它方法。</span></p>
  • news

    2018腾科技术嘉年华主题活动月第三场 ---华为专场

    发布时间:2018-01-22

    <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">2018年1月20日华为上海办事处--上海腾科技术嘉年华主题活动月的第三场活动-华为专场,也已圆满落下帷幕,新的一年,新的开始,腾科每周举办一场专场活动,正为新的一年开启了良好的开头,本次华为专场活动,我们特邀了华为爱好者前来,和我们分享这一盛宴。</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">&nbsp; &nbsp; &nbsp;活动从1月20日号下午一点半开始,地点在上海华为办事处举行。</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1516608735132.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1516608735132.jpg" alt=""></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><br></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><br></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">&nbsp; &nbsp; &nbsp; &nbsp;本次活动主要阐述了:华为项目案例分析、华为云计算解读、华为SAP项目经理就业分享。</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1516608704987.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1516608704987.jpg" alt=""></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1516608767770.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1516608767770.jpg" alt=""></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1516608794320.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1516608794320.jpg" alt=""></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">&nbsp; &nbsp;腾科IT教育集团作为一家聚焦IT教育和IT人才培养,提供解决方案为主要经营目标的专业公司,不仅做最好的,更要做最专业的IT教育公司。</p>
  • news

    我司总经理杨总特邀为上海理工大学研究生答辩的评审专家

    发布时间:2018-01-18

    <p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">&nbsp;2018年1月15日上海腾科总经理杨总特邀为<span style="color:#666666;line-height:28px;">评审专家,为</span>上海理工大学研究生答辩提出宝贵的意见。</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;评审们就研究生论文的主题研究价值,逻辑思路,语言的学术等方面性进行了详尽地分析、讨论。</p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><br></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;">&nbsp;&nbsp;<img src="http://115.29.210.249/tggPic/content/2018-01/1516242437479.JPG" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1516242437479.JPG" alt=""></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><br></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1516242849679.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1516242849679.jpg" alt=""><br></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1516242863610.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1516242863610.jpg" alt=""><br></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><br></p><p style="font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><img src="http://115.29.210.249/tggPic/content/2018-01/1516242875757.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1516242875757.jpg" alt=""><br></p><hr><hr>
  • news

    2018腾科技术嘉年华主题活动月第二场 ---ORACLE甲骨文专场

    发布时间:2018-01-15

    <div class="news_content" style="margin:0px;padding:20px 0px 0px;font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"><span class="content" style="color:#666666;line-height:28px;"><p class="MsoNormal" style="color:#333333;text-indent:36pt;"><span style="color:#666666;line-height:28px;">随着互联网、物联网上数据的不断增多,被人们越来越重视,甚至被誉为</span>“未来的新石油”,一个国家拥有数据的规模、活性及解释运用的能力将成为综合国力的重要组成部分,未来对数据的占有和控制甚至将成为继陆权、海权、空权之外国家的另一个核心资产。<span style="color:#666666;line-height:28px;">&nbsp;</span><span style="color:#666666;line-height:28px;">腾科</span><span style="color:#666666;line-height:28px;">IT教育集团联合世界最大企业级软件公司,全球最先进数据库云技术提供者ORACLE,为该领域服务工作的专业人员,带来一场全案例,数据库诊断及优化案例分享会。&nbsp;</span></p></span><p class="MsoNormal" style="text-indent:27pt;"><span style="color:#666666;line-height:28px;">随着</span>1月7日在上海锦江小礼堂,腾科IT教育集团携手世界“开源技术领导者”Redhat(红帽),开启了腾科2018技术嘉年华主题活动月的序幕,活动当天有近400位学员的踊跃参与,取得了圆满成功。<span style="color:#666666;line-height:28px;">紧接着第二波</span><span style="color:#666666;line-height:28px;">ORACLE专场数据库诊断及优化案例分享会在1/13号也正式拉了开帷幕。</span></p><p class="MsoNormal" style="text-indent:27pt;"><img src="http://115.29.210.249/tggPic/content/2018-01/1515991576456.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1515991576456.jpg" alt=""></p><p class="MsoNormal" style="text-indent:27pt;">13:30在上海天津路名人大厦ORACLE公司正式开始了这次活动。</p><p class="MsoNormal" style="text-indent:27pt;"><img src="http://115.29.210.249/tggPic/content/2018-01/1515991999356.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1515991999356.jpg" alt=""></p><p class="MsoNormal" style="text-indent:27pt;">14:00活动正式开始,现场邀请了<span style="color:#666666;line-height:28px;">现任某全国大型商业</span><span style="color:#666666;line-height:28px;">银行</span><span style="color:#666666;line-height:28px;">、</span><span style="color:#666666;line-height:28px;">总行全国数据中心,数据库团队技术负责人。有</span><span style="color:#666666;line-height:28px;">近</span><span style="color:#666666;line-height:28px;">15年国内各大企业,数据库管理工作经验;另一位是腾科IT教育集团华东区教学总监,</span><span style="color:#666666;line-height:28px;">五年以上</span><span style="color:#666666;line-height:28px;">IT教学专业课程培训经验。</span><span style="color:#666666;line-height:28px;">先后为近百家国内外知名企业</span><span style="color:#666666;line-height:28px;">IT部门定制内训课程,(其中包括百度、大众点评、兴业银行、思科等)。</span></p><p class="MsoNormal" style="text-indent:27pt;"><span style="color:#666666;line-height:28px;"><br></span></p><p class="MsoNormal" style="text-indent:27pt;"><span style="color:#666666;line-height:28px;"><img src="http://115.29.210.249/tggPic/content/2018-01/1515993298270.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1515993298270.jpg" alt=""><br></span><span style="color:#666666;line-height:28px;"></span></p><p class="MsoNormal" style="text-indent:27pt;">活动上,主要做了一下几个方面的介绍:甲骨文公司介绍、<span style="color:#666666;line-height:28px;">数据时代未来趋势、</span><span style="color:#666666;line-height:28px;">数据库诊断及优化案例分享会</span></p><p class="MsoNormal" style="text-indent:27pt;"><span style="color:#666666;line-height:28px;"><img src="http://115.29.210.249/tggPic/content/2018-01/1515993656238.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1515993656238.jpg" alt=""><br></span></p><p class="MsoNormal" style="text-indent:27pt;"><br></p><p class="MsoNormal" style="text-indent:27pt;"><img src="http://115.29.210.249/tggPic/content/2018-01/1515993674588.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1515993674588.jpg" alt=""></p><p class="MsoNormal" style="text-indent:27pt;"><br></p><p class="MsoNormal" style="text-indent:27pt;">16:30进行了技术交流互动提问,大家都很积极参与</p><p class="MsoNormal" style="text-indent:27pt;"><img src="http://115.29.210.249/tggPic/content/2018-01/1515993898260.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1515993898260.jpg" alt=""></p><p class="MsoNormal" style="text-indent:27pt;">17:00活动结束,大家一起合影纪念这次活动的圆满成功</p><p class="MsoNormal" style="text-indent:27pt;"><img src="http://115.29.210.249/tggPic/content/2018-01/1515994108281.jpg" data-ke-src="http://115.29.210.249/tggPic/content/2018-01/1515994108281.jpg" alt=""></p><p class="MsoNormal" style="text-indent:27pt;">腾科<span style="color:#666666;line-height:28px;">只为专注于技术提升的你量身打造,</span><span style="color:#666666;line-height:28px;">拒绝空手而归!</span><span style="color:#666666;line-height:28px;"><br></span></p></div><div class="null" style="margin:0px;padding:0px;font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"></div><div class="bdsharebuttonbox bdshare-button-style0-16" style="margin:0px;padding:0px;font-family:&quot;color:#333333;font-size:14px;background-color:#FFFFFF;"></div>
在线咨询 ×

您好,请问有什么可以帮您?我们将竭诚提供最优质服务!