mirror of
https://github.com/MariaDB/server.git
synced 2025-02-13 17:05:35 +01:00
![Marko Mäkelä](/assets/img/avatar_default.png)
innodb.table_flags: Adjust the test case. Due to the MDEV-12873 fix in 10.2, the corrupted flags for table test.td would be converted, and a tablespace flag mismatch will occur when trying to open the file.
153 lines
4.8 KiB
Text
153 lines
4.8 KiB
Text
SET GLOBAL innodb_fast_shutdown=0;
|
|
SHOW VARIABLES LIKE 'innodb_encrypt%';
|
|
Variable_name Value
|
|
innodb_encrypt_log OFF
|
|
innodb_encrypt_tables OFF
|
|
innodb_encryption_rotate_key_age 1
|
|
innodb_encryption_rotation_iops 100
|
|
innodb_encryption_threads 0
|
|
create database innodb_encrypted_1;
|
|
use innodb_encrypted_1;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 3
|
|
set autocommit=0;
|
|
set autocommit=1;
|
|
commit work;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 3
|
|
# should be 100
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
100
|
|
create database innodb_encrypted_2;
|
|
use innodb_encrypted_2;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 3
|
|
set autocommit=0;
|
|
commit work;
|
|
set autocommit=1;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 3
|
|
# should be 100
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
100
|
|
# should be 100
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
100
|
|
create database innodb_encrypted_3;
|
|
use innodb_encrypted_3;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 3
|
|
set autocommit=0;
|
|
commit work;
|
|
set autocommit=1;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 3
|
|
# should be 100
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
100
|
|
# should be 200
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
200
|
|
use test;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 3
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
100
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
200
|
|
SET GLOBAL innodb_encrypt_tables = on;
|
|
SET GLOBAL innodb_encryption_threads=4;
|
|
# Wait until all encrypted tables have been encrypted
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
200
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
100
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 3
|
|
# Success!
|
|
# Restart mysqld --innodb_encrypt_tables=0 --innodb_encryption_threads=0
|
|
# Restart Success!
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
use test;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
use innodb_encrypted_1;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
use innodb_encrypted_2;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
use innodb_encrypted_3;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
use innodb_encrypted_1;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
use innodb_encrypted_2;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
use innodb_encrypted_3;
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
100
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
200
|
|
SET GLOBAL innodb_encrypt_tables = off;
|
|
SET GLOBAL innodb_encryption_threads=4;
|
|
# Wait until all default encrypted tables have been decrypted
|
|
# should be 100
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
100
|
|
# should be 200
|
|
SELECT COUNT(*) FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 AND NAME LIKE 'innodb_encrypted%';
|
|
COUNT(*)
|
|
200
|
|
show status like 'innodb_pages0_read%';
|
|
Variable_name Value
|
|
Innodb_pages0_read 303
|
|
use test;
|
|
drop database innodb_encrypted_1;
|
|
drop database innodb_encrypted_2;
|
|
drop database innodb_encrypted_3;
|