欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

InnoDB--------獨(dú)立表空間平滑遷移-創(chuàng)新互聯(lián)

1. 背景

專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)雙橋免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了數(shù)千家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

  * InnoDB的表空間可以是共享的或獨(dú)立的。如果是共享表空間,則所有的表空間都放在一個(gè)文件里:ibdata1,ibdata2..ibdataN,這種情況下,目前應(yīng)該還沒(méi)辦法實(shí)現(xiàn)表空間的遷移,除非完全遷移。

* 不管是共享還是獨(dú)立表空間,InnoDB每個(gè)數(shù)據(jù)表的元數(shù)據(jù)(metadata)總是保存在 ibdata1 這個(gè)共享表空間里,因此該文件必不可少,它還可以用來(lái)保存各種數(shù)據(jù)字典等信息。

  * 獨(dú)立表空間中數(shù)據(jù)文件單獨(dú)存放在.ibd文件中。

  * MySQL 5.6版本開(kāi)始支持獨(dú)立表空間導(dǎo)入與導(dǎo)出。

2. 環(huán)境 [ 2臺(tái)DB實(shí)例, MySQL 5.6表遷移至MySQL5.7 ]

InnoDB--------獨(dú)立表空間平滑遷移

  * 源實(shí)例 MySQL

mysql> show variables like 'innodb%version'; +----------------+--------+ | Variable_name  | Value  | +----------------+--------+ | innodb_version | 5.6.36 | +----------------+--------+ 1 row in set (0.01 sec) mysql> show variables like 'datadir'; +---------------+--------------------+ | Variable_name | Value              | +---------------+--------------------+ | datadir       | /data/mysql_data6/ | +---------------+--------------------+ 1 row in set (0.00 sec)

  * 目的實(shí)例 MySQL

mysql> show variables like 'innodb%version'; +----------------+--------+ | Variable_name  | Value  | +----------------+--------+ | innodb_version | 5.7.18 | +----------------+--------+ 1 row in set (0.00 sec) mysql> show variables like 'datadir'; +---------------+--------------------+ | Variable_name | Value              | +---------------+--------------------+ | datadir       | /data/mysql_data7/ | +---------------+--------------------+ 1 row in set (0.01 sec)

  * 源實(shí)例 MySQL 遷移的數(shù)據(jù)庫(kù)與表信息

mysql> select database(); +------------+ | database() | +------------+ | mytest     | +------------+ 1 row in set (0.00 sec) mysql> show create table users; +-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Table | Create Table                                                                                                                                                                                                                                                      | +-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | users | CREATE TABLE `users` (   `id` bigint(20) NOT NULL AUTO_INCREMENT,   `name` varchar(255) NOT NULL,   `sex` enum('M','F') NOT NULL DEFAULT 'M',   `age` int(11) NOT NULL DEFAULT '0',   PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 | +-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.01 sec) mysql> select * from users; +----+-------+-----+-----+ | id | name  | sex | age | +----+-------+-----+-----+ |  1 | tom   | M   |  25 | |  2 | jak   | F   |  38 | |  3 | sea   | M   |  43 | |  4 | lisea | M   |  36 | +----+-------+-----+-----+ 4 rows in set (0.00 sec)

3. 平滑遷移實(shí)戰(zhàn) [ 遷移mytest數(shù)據(jù)庫(kù)下users表 ]

  * 目的MySQL實(shí)例創(chuàng)建相同的數(shù)據(jù)庫(kù)與表 [ MySQL 5.7中創(chuàng)建表需要指定row_format=compact ]

mysql> create database mytest character set utf8mb4; Query OK, 1 row affected (0.03 sec) mysql> use mytest; Database changed mysql> CREATE TABLE `users` (     ->   `id` bigint(20) NOT NULL AUTO_INCREMENT,     ->   `name` varchar(255) NOT NULL,     ->   `sex` enum('M','F') NOT NULL DEFAULT 'M',     ->   `age` int(11) NOT NULL DEFAULT '0',     ->   PRIMARY KEY (`id`)     -> ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 row_format=compact; Query OK, 0 rows affected (0.59 sec) mysql> system ls -l /data/mysql_data7/mytest/ total 64 -rw-r----- 1 mysql mysql    67 Jul 18 05:21 db.opt -rw-r----- 1 mysql mysql  8648 Jul 18 05:21 users.frm -rw-r----- 1 mysql mysql 49152 Jul 18 05:21 users.ibd

  * 目的MySQL實(shí)例丟棄表空間

mysql> alter table users discard tablespace; Query OK, 0 rows affected (0.01 sec) mysql> system ls -l /data/mysql_data7/mytest/ total 16 -rw-r----- 1 mysql mysql   67 Jul 18 05:21 db.opt -rw-r----- 1 mysql mysql 8648 Jul 18 05:21 users.frm

  * 源MySQL實(shí)例刷新表至磁盤并加lock,并且當(dāng)前表quiesce狀態(tài),只讀,且創(chuàng)建.cfg metadata文件

mysql> flush tables users for export; Query OK, 0 rows affected (0.00 sec)

  * 從源MySQL實(shí)例服務(wù)止拷貝表文件users.ibd, users.cfg文件至目的MySQL實(shí)例中

[root@MySQL ~]# cp -v /data/mysql_data6/mytest/users.{cfg,ibd} /data/mysql_data7/mytest/ `/data/mysql_data6/mytest/users.cfg' -> `/data/mysql_data7/mytest/users.cfg' `/data/mysql_data6/mytest/users.ibd' -> `/data/mysql_data7/mytest/users.ibd'

  * 修改目的MySQL實(shí)例數(shù)據(jù)文件下拷貝文件的所有者與所有組

[root@MySQL ~]# chown -v mysql.mysql /data/mysql_data7/mytest/users.{cfg,ibd} changed ownership of `/data/mysql_data7/mytest/users.cfg' to mysql:mysql changed ownership of `/data/mysql_data7/mytest/users.ibd' to mysql:mysql

  * 源MySQL實(shí)例釋放lock

mysql> unlock tables; Query OK, 0 rows affected (0.00 sec)

* 目的MySQL實(shí)例加載表空間

mysql> alter table users import tablespace; Query OK, 0 rows affected (0.04 sec)

  * 查看目的MySQL實(shí)例表數(shù)據(jù) [ MySQL5.6數(shù)據(jù)成功遷移過(guò)來(lái) ]

mysql> select * from users; +----+-------+-----+-----+ | id | name  | sex | age | +----+-------+-----+-----+ |  1 | tom   | M   |  25 | |  2 | jak   | F   |  38 | |  3 | sea   | M   |  43 | |  4 | lisea | M   |  36 | +----+-------+-----+-----+ 4 rows in set (0.00 sec)

4. 注意問(wèn)題

  * MySQL 5.6數(shù)據(jù)遷移到MySQL5.7時(shí),如果創(chuàng)建目的表時(shí)不指定row_format,import表數(shù)據(jù)時(shí)會(huì)報(bào)錯(cuò),原因在于MySQL 5.6中是Antelope,在MySQL 5.7中是Barracuda,主要是在表壓縮和行的動(dòng)態(tài)格式上有所改變。

5. 總結(jié)

以需求驅(qū)動(dòng)技術(shù),技術(shù)本身沒(méi)有優(yōu)略之分,只有業(yè)務(wù)之分。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

分享文章:InnoDB--------獨(dú)立表空間平滑遷移-創(chuàng)新互聯(lián)
文章起源:http://chinadenli.net/article14/dgooge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名自適應(yīng)網(wǎng)站、小程序開(kāi)發(fā)App設(shè)計(jì)、微信公眾號(hào)定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)