数据库迁移
<h2>数据库迁移操作</h2>
<ul>
<li>相同版本 MySQL 数据库之间的迁移。</li>
<li>不同版本 MySQL 数据库之间的迁移。</li>
<li>不同数据库间的迁移。</li>
</ul>
<h2>相同版本的迁移</h2>
<ul>
<li>相同版本的 MySQL 数据库是指主版本号一致的数据库。</li>
<li>主版本号一致的数据库迁移最容易实现。</li>
<li>由于迁移前后数据库的主版本号相同,可通过复制数据库目录来实现数据库迁移。</li>
<li>使用 mysqldump 命令进行数据库备份,然后使用 mysql 命令将备份文件还原到新的 MySQL 数据库。</li>
<li>迁移时的备份和还原操作可以同时执行。</li>
</ul>
<h3>实例</h3>
<ul>
<li>
<p>从 hostname1 机器中备份出所有数据库,将数据库迁移到 hostname2 机器上</p>
<pre><code class="language-shell">mysqldump -h hostname1 -u root -password=password1 -all-databases
|
mysql -h hostname2 -u root -password=password2</code></pre>
<ul>
<li>符号“|”用来实现将命令 mysqldump 备份的文件送给 mysql 命令;</li>
<li>password1 为 hostname1 主机上 root 用户的密码;</li>
<li>password2 为 hostname2 主机上 root 用户的密码;</li>
<li>-all-databases 表示迁移全部的数据库,可省略。</li>
</ul>
</li>
</ul>
<h2>不用版本的迁移</h2>
<ul>
<li>不同版本的 MySQL 数据库之间的数据迁移通常是 MySQL 升级的原因。</li>
</ul>
<h2>不同版本下的数据库迁移</h2>
<ul>
<li>
<p>低版本数据库向高版本数据库进行迁移</p>
<ul>
<li>由于高版本会兼容低版本,所以该种方式也是最容易实现的操作。</li>
<li>对于存储类型为 MyISAM 的表,最安全和最常用的操作是直接复制数据文件。</li>
<li>对于存储类型为 InnoDB 的表,最安全和最常用的操作是执行 mysqldump 命令进行备份和执行 mysql 命令还原恢复数据。</li>
</ul>
</li>
<li>
<p>高版本数据库向低版本数据库进行迁移</p>
<ul>
<li>
<p>因为高版本数据库一些新的特性,是低版本数据库所不具有的</p>
</li>
<li>在数据库迁移时要特别小心,最好使用 mysqldump 命令来进行备份,避免迁移时造成数据丢失。</li>
</ul>
</li>
</ul>
<h2>不同数据库的迁移</h2>
<ul>
<li>是指从其它类型的数据库迁移到 MySQL 数据库,或从 MySQL 数据库迁移到其他类型的数据库。</li>
</ul>