日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

MySQL InnoDB表空間加密示例詳解

瀏覽:26日期:2023-10-12 19:03:26

前言

從 MySQL5.7.11開始,MySQL對InnoDB支持存儲在單獨表空間中的表的數據加密 。此功能為物理表空間數據文件提供靜態加密。該加密是在引擎內部數據頁級別的加密手段,在數據頁寫入文件系統時加密,加密用的是AES算法,而其解密是在從文件讀到內存中時進行。

1 配置加密插件

1.1 修改配置文件

在mysql配置文件【mysqld】x項中添加如下內容

plugin_dir=/usr/local/mysql5.7/lib/mysql/plugin # 插件路徑,根據實際情況修改early-plugin-load='keyring_file.so' # 加密插件keyring_file_data=/data/mysql3306/keyring/keyring# 路徑不存在,需要創建innodb_file_per_table=1  # 只作用于獨立表空間

1.2 創建加密所需的路徑并配置權限

創建時要注意 ,keyring_file_data 里配置的keyring會在啟動時自動創建,本步驟中創建到對應目錄即可

mkdir -p /data/mysql3306/keyring/chown -R mysql:mysql /data/mysql3306/keyring/chmod 750 /data/mysql3306/keyring

1.3 重啟MySQL

重啟mysql即可,啟動后會發現注意/data/mysql3306/keyring 目錄下生成了 keyring文件

MySQL InnoDB表空間加密示例詳解

注意,重啟后也要看一下mysql錯誤日志里有沒有相關錯誤信息,如果沒有錯誤則繼續進行

1.4 查看插件狀態

啟動后可以查看插件是否生效

mysql> SELECT PLUGIN_NAME, PLUGIN_STATUS, PLUGIN_Type,PLUGIN_Library FROM INFORMATION_SCHEMA.PLUGINS WHERE PLUGIN_NAME LIKE ’keyring_file’;+--------------+---------------+-------------+-----------------+| PLUGIN_NAME | PLUGIN_STATUS | PLUGIN_Type | PLUGIN_Library |+--------------+---------------+-------------+-----------------+| keyring_file | ACTIVE | KEYRING | keyring_file.so |+--------------+---------------+-------------+-----------------+1 row in set (0.01 sec)

或者用 show plugins命令查看

MySQL InnoDB表空間加密示例詳解

2 測試加密表空間

2.1 創建加密的新表

創建一張新表,并添加ENCRYPTION=’Y’ ,加密表空間

mysql> create table test1(id int primary key auto_increment, name varchar(20),key name(name)) ENCRYPTION=’Y’;Query OK, 0 rows affected (0.02 sec)

此時,keyring文件也會有變化

MySQL InnoDB表空間加密示例詳解

2.2 新增數據

向新增的測試表里添加測試數據,并查看

mysql> insert into test1(id,name) values(1,’anm’),(2,’keyring’);Query OK, 2 rows affected (0.01 sec)Records: 2 Duplicates: 0 Warnings: 0mysql> select * from test1;+----+---------+| id | name |+----+---------+| 1 | anm || 2 | keyring |+----+---------+2 rows in set (0.00 sec)

2.3修改是否加密

測試取消表空間加密

mysql> show create table test1;+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| Table | Create Table |+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| test1 | CREATE TABLE `test1` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFAULT NULL, PRIMARY KEY (`id`), KEY `name` (`name`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 ENCRYPTION=’Y’ |+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+1 row in set (0.00 sec)mysql> alter table test1 ENCRYPTION=’N’;Query OK, 2 rows affected (0.04 sec)Records: 2 Duplicates: 0 Warnings: 0mysql> show create table test1;+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| Table | Create Table |+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+| test1 | CREATE TABLE `test1` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFAULT NULL, PRIMARY KEY (`id`), KEY `name` (`name`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 ENCRYPTION=’N’ |+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+1 row in set (0.00 sec)mysql> select * from test1;+----+---------+| id | name |+----+---------+| 1 | anm || 2 | keyring |+----+---------+2 rows in set (0.00 sec)

再配置為加密

mysql> alter table test1 ENCRYPTION=’Y’;Query OK, 2 rows affected (0.03 sec)Records: 2 Duplicates: 0 Warnings: 0mysql> select * from test1;+----+---------+| id | name |+----+---------+| 1 | anm || 2 | keyring |+----+---------+2 rows in set (0.00 sec)

所以,表空間加密方式是可以在線調整的,且對數據查詢不影響。

另外,keyring_file_data也是可以動態調整的,比較簡單,就不演示了

2.4 統計表空間加密的表

想要知道哪些表的表空間加密了,可以通過數據字典表里查看

mysql> SELECT TABLE_SCHEMA, TABLE_NAME, CREATE_OPTIONS FROM INFORMATION_SCHEMA.TABLES WHERE table_schema=’testdb2’ and CREATE_OPTIONS=’ENCRYPTION='Y'’;+--------------+------------+----------------+| TABLE_SCHEMA | TABLE_NAME | CREATE_OPTIONS |+--------------+------------+----------------+| testdb2 | test1 | ENCRYPTION='Y' |+--------------+------------+----------------+1 row in set (0.00 sec)

3. 異常處理

如果keyring文件損壞或被誤刪除了,會出現什么情況

3.1 備份keyring文件

為了保險起見,先備份一下keyring文件

[root@mha1 keyring]# cp -p keyring keyring.bak[root@mha1 keyring]# ll -h total 8.0K-rw-r----- 1 mysql mysql 155 Aug 16 09:10 keyring-rw-r----- 1 mysql mysql 155 Aug 16 09:10 keyring.bak

3.2 刪除keyring

直接刪除keyring文件

[root@mha1 keyring]# rm -f keyring[root@mha1 keyring]# ll -h total 4.0K-rw-r----- 1 mysql mysql 155 Aug 16 09:10 keyring.bak

3.3 查看數據是否正常

查看數據及新建加密表是否成功

mysql> select * from test1;+----+---------+| id | name |+----+---------+| 1 | anm || 2 | keyring |+----+---------+2 rows in set (0.00 sec)mysql> create table test2(id int primary key auto_increment, name varchar(20),key name(name)) ENCRYPTION=’Y’;Query OK, 0 rows affected (0.01 sec)

也就是說此時,即使keyrig文件丟失也是可以正常操作的

3.4 重啟數據庫

重啟數據庫后,會發現,又自動生成了keyring文件

MySQL InnoDB表空間加密示例詳解

此時再查看加密表

mysql> select * from test1;ERROR 3185 (HY000): Can’t find master key from keyring, please check in the server log if a keyring plugin is loaded and initialized successfully.

創建加密表

mysql> create table test3(id int primary key auto_increment, name varchar(20),key name(name)) ENCRYPTION=’Y’;Query OK, 0 rows affected (0.02 sec)

新建表是可以的,因為此時相當于初始化的時候。

那么再將原keyring還原,然后再重啟數據庫,會發現又能成功了

mysql> select * from test1;+----+---------+| id | name |+----+---------+| 1 | anm || 2 | keyring |+----+---------+2 rows in set (0.00 sec)

4 keyring管理

4.1 定期備份

可以每日進行備份,但是備份的路徑和日常備份分開,需要還原的時候再拷貝至目標文件

4.2 定期更新

為了考慮安全性,當懷疑key泄露時,需要進行更新。更新后原先的表依舊可以正常方案,因為更新置灰改變master encryption key 并重新加密 tablespace keys,不會對表空間重新加密或解密。更新的方法:

-- 更新 master keymysql> ALTER INSTANCE ROTATE INNODB MASTER KEY;Query OK, 0 rows affected (0.00 sec)-- 更新后依舊能正常訪問mysql> select * from test1;+----+---------+| id | name |+----+---------+| 1 | anm || 2 | keyring |+----+---------+2 rows in set (0.00 sec)

至此,InnoDB表空間的簡單使用就演示完畢。其中還有很多細節,可以查看官方文檔進行探索,https://dev.mysql.com/doc/refman/5.7/en/innodb-data-encryption.html。

總結

到此這篇關于MySQL InnoDB表空間加密的文章就介紹到這了,更多相關MySQL InnoDB表空間加密內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: MySQL 數據庫
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
91精品国产自产精品男人的天堂| 国产成人精品999在线观看| 高清久久精品| 国产一区二区三区久久| 国产盗摄——sm在线视频| 激情综合五月| 韩国久久久久久| 中文字幕在线视频久| 欧美国产免费| 国产粉嫩在线观看| 欧美成a人免费观看久久| 免费污视频在线一区| 久久精品青草| 午夜国产欧美理论在线播放| 欧美一区二区三区高清视频 | 性欧美长视频| 久久福利毛片| 亚洲男人在线| 日本一区免费网站| 国产欧美日韩精品一区二区三区| 国产精品对白| 国产精品17p| 国产亚洲精品自拍| 中文另类视频| 久久亚洲图片| 国产乱人伦丫前精品视频| 欧美激情视频一区二区三区免费| 国产伦精品一区二区三区视频| 精品午夜av| 欧美激情国产在线| 日韩高清一区| 捆绑调教美女网站视频一区| 欧美日韩视频| 国产精品一区毛片| 蜜臀va亚洲va欧美va天堂 | 亚洲精品激情| 国产伦理久久久久久妇女| 另类专区亚洲| 亚洲日本欧美| 高清日韩欧美| 免播放器亚洲| 国产精品片aa在线观看| 欧洲av不卡| 偷拍亚洲精品| 日韩电影免费网址| 日韩区欧美区| 日韩国产一区二区三区| 中文字幕中文字幕精品| 国产在线视频欧美一区| 欧美高清一区| 国产精品xxx在线观看| 欧美va天堂在线| 国产精品最新自拍| 婷婷亚洲综合| 免费观看在线色综合| 久久一区欧美| 99国内精品| 精品国产精品国产偷麻豆| 日韩亚洲在线| 岛国精品一区| 亚洲精品亚洲人成在线观看| 国产videos久久| 国产精品视区| 麻豆精品久久久| 日本不卡免费高清视频在线| 色狠狠一区二区三区| 天堂av在线| 丝袜亚洲另类欧美| av日韩中文| 亚洲精品女人| 亚洲黄色免费av| 在线精品观看| 日韩免费看片| 亚洲精品激情| 999精品色在线播放| 国产免费av国片精品草莓男男| 女人天堂亚洲aⅴ在线观看| 激情久久一区二区| 欧美日韩1区| 亚洲a一区二区三区| 日韩成人精品一区二区三区 | 女同性一区二区三区人了人一| 国产探花在线精品| 国产农村妇女精品一二区| 97精品中文字幕| 久久免费影院| 国产精品777777在线播放| 婷婷综合五月| 蜜臀久久精品| 国内自拍视频一区二区三区| 韩日一区二区三区| 91av一区| 中文字幕日本一区二区| 午夜欧美理论片| 午夜精品久久久久久久久久蜜桃| 欧美日韩18| 在线精品亚洲| 一区二区不卡| 中文字幕av一区二区三区四区| 国产精品av一区二区| 午夜久久中文| 天堂а√在线最新版中文在线| 成人免费一区| 成人日韩av| 视频在线不卡免费观看| 国产日韩高清一区二区三区在线| 日韩一区精品| 涩涩涩久久久成人精品| 综合亚洲色图| 亚洲综合福利| 中文字幕日本一区二区| 免费成人在线观看| 亚洲欧美日本视频在线观看| 欧美另类专区| 激情综合亚洲| 91精品91| 欧美日韩三区| 久久亚洲国产精品一区二区| 亚洲色图综合| 日日夜夜免费精品视频| 在线一区视频| 男人天堂欧美日韩| 亚洲专区视频| 日韩高清电影一区| 国产视频网站一区二区三区| 国产欧美自拍一区| 久久这里只有| 久久久久久一区二区| 在线中文字幕播放| 1024精品一区二区三区| 蜜桃成人av| 久久午夜精品| 欧美一级二区| 精品九九在线| 999国产精品视频| 欧美亚洲国产一区| 亚洲在线一区| 日韩高清不卡在线| 久久精品国产久精国产| 精品国产免费人成网站| 亚洲午夜黄色| 亚洲一区中文| 日韩一区二区三区在线看| 国产精品尤物| 麻豆成全视频免费观看在线看| 日韩国产欧美| 丝袜亚洲另类欧美| 欧美一区自拍| www在线观看黄色| 亚洲婷婷免费| 亚洲小说春色综合另类电影| 国产精品亲子伦av一区二区三区| 精品视频免费| 日本少妇精品亚洲第一区| 欧美国产日本| 久久一区二区中文字幕| 中文一区一区三区免费在线观 | 奇米777国产一区国产二区| 国产精选一区| 日本韩国欧美超级黄在线观看| 亚洲一区黄色| 清纯唯美亚洲综合一区| 精品久久国产一区| 免费av一区二区三区四区| 在线国产精品一区| 牛牛精品成人免费视频| 99tv成人| 日本少妇精品亚洲第一区| 国产精品久久观看| 99香蕉国产精品偷在线观看| 久久国产免费看| 深夜视频一区二区| 亚洲人成网77777色在线播放| 久久av超碰| 亚洲国产成人精品女人| 欧美精品三级在线| 日韩视频网站在线观看| 亚洲精品观看| 亚洲成av在线| 日韩 欧美一区二区三区| 黑森林国产精品av| 亚洲精品婷婷| 一区二区三区四区日本视频| 亚洲精品一二| 91精品精品| 欧美a一区二区| 日韩专区在线视频| 亚洲精品**中文毛片| 欧美精品国产白浆久久久久| 91精品一区二区三区综合在线爱| 日本a口亚洲| 久久久久久久久99精品大| 国产麻豆一区二区三区精品视频| 亚洲精品极品少妇16p| 成人在线观看免费视频| 一区二区亚洲视频| 日韩精品一区二区三区免费观看| 欧美影院精品| 免费人成在线不卡| 日韩欧美综合|