summaryrefslogtreecommitdiff
path: root/mysql-test/suite/encryption/t/innodb-key-rotation-disable.test
blob: 3167cee4b4b84e35c56576a94c4021c56a62dfca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
-- source include/have_innodb.inc
-- source include/have_file_key_management_plugin.inc
# not embedded because of restarts
-- source include/not_embedded.inc

SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;

let $encryption = `SELECT @@innodb_encrypt_tables`;
SET GLOBAL innodb_file_per_table = ON;
# zlib
set global innodb_compression_algorithm = 1;

create database enctests;
use enctests;
create table t1(a int not null primary key, b char(200)) engine=innodb;
create table t2(a int not null primary key, b char(200)) engine=innodb row_format=compressed;
create table t3(a int not null primary key, b char(200)) engine=innodb page_compressed=yes;
create table t4(a int not null primary key, b char(200)) engine=innodb encrypted=yes;
create table t5(a int not null primary key, b char(200)) engine=innodb encrypted=yes row_format=compressed;
create table t6(a int not null primary key, b char(200)) engine=innodb encrypted=yes page_compressed=yes;
create table t7(a int not null primary key, b char(200)) engine=innodb encrypted=no;
create table t8(a int not null primary key, b char(200)) engine=innodb encrypted=no row_format=compressed;
create table t9(a int not null primary key, b char(200)) engine=innodb encrypted=no page_compressed=yes;

insert into t1 values (1, 'secredmessage');
insert into t2 values (1, 'secredmessage');
insert into t3 values (1, 'secredmessagecompressedaaaaaaaaabbbbbbbbbbbbbbccccccccccccccc');
insert into t4 values (1, 'secredmessage');
insert into t5 values (1, 'secredmessage');
insert into t6 values (1, 'secredmessagecompressedaaaaaaaaabbbbbbbbbbbbbbccccccccccccccc');
insert into t7 values (1, 'publicmessage');
insert into t8 values (1, 'publicmessage');
insert into t9 values (1, 'pugliccompressedaaaaaaaaabbbbbbbbbbbbbbccccccccccccccc');

--echo # should list tables t1-t6
SELECT NAME,ENCRYPTION_SCHEME,CURRENT_KEY_ID FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND NAME LIKE 'enctests%';
--echo # should list tables t7-t9
SELECT NAME,ENCRYPTION_SCHEME,CURRENT_KEY_ID FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0 and NAME LIKE 'enctests%';

--error ER_WRONG_VALUE_FOR_VAR
SET GLOBAL innodb_encrypt_tables=OFF;
--error ER_WRONG_VALUE_FOR_VAR
SET GLOBAL innodb_encrypt_tables=ON;

--let $MYSQLD_DATADIR=`select @@datadir`

-- source include/shutdown_mysqld.inc

--let SEARCH_RANGE = 10000000
--let SEARCH_PATTERN=secred
--echo # t1 default on expecting NOT FOUND
-- let SEARCH_FILE=$MYSQLD_DATADIR/enctests/t1.ibd
-- source include/search_pattern_in_file.inc
--echo # t2 default on expecting NOT FOUND
-- let SEARCH_FILE=$MYSQLD_DATADIR/enctests/t2.ibd
-- source include/search_pattern_in_file.inc
--echo # t3 default on expecting NOT FOUND
-- let SEARCH_FILE=$MYSQLD_DATADIR/enctests/t3.ibd
-- source include/search_pattern_in_file.inc
--echo # t4 on expecting NOT FOUND
-- let SEARCH_FILE=$MYSQLD_DATADIR/enctests/t4.ibd
-- source include/search_pattern_in_file.inc
--echo # t5 on expecting NOT FOUND
-- let SEARCH_FILE=$MYSQLD_DATADIR/enctests/t5.ibd
-- source include/search_pattern_in_file.inc
--echo # t6 on expecting NOT FOUND
-- let SEARCH_FILE=$MYSQLD_DATADIR/enctests/t6.ibd
-- source include/search_pattern_in_file.inc
--let SEARCH_PATTERN=public
--echo # t7 off expecting FOUND
-- let SEARCH_FILE=$MYSQLD_DATADIR/enctests/t7.ibd
-- source include/search_pattern_in_file.inc
--echo # t8 row compressed expecting NOT FOUND
-- let SEARCH_FILE=$MYSQLD_DATADIR/enctests/t8.ibd
-- source include/search_pattern_in_file.inc
--echo # t9 page compressed expecting NOT FOUND
-- let SEARCH_FILE=$MYSQLD_DATADIR/enctests/t9.ibd
-- source include/search_pattern_in_file.inc

-- source include/start_mysqld.inc

drop database enctests;