Linux ip-172-26-2-223 5.4.0-1018-aws #18-Ubuntu SMP Wed Jun 24 01:15:00 UTC 2020 x86_64
Apache
: 172.26.2.223 | : 18.221.207.166
Cant Read [ /etc/named.conf ]
8.1.13
www
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
www /
server /
mysql /
mysql-test /
suite /
innodb /
t /
[ HOME SHELL ]
Name
Size
Permission
Action
add_foreign_key.test
1.35
KB
-rw-r--r--
alter_crash.test
6.71
KB
-rw-r--r--
alter_foreign_crash.test
956
B
-rw-r--r--
alter_kill-master.opt
68
B
-rw-r--r--
alter_kill.test
5.1
KB
-rw-r--r--
alter_missing_tablespace.test
3.05
KB
-rw-r--r--
alter_page_size.test
705
B
-rw-r--r--
alter_rename_existing.test
5.49
KB
-rw-r--r--
alter_rename_files.test
746
B
-rw-r--r--
alter_row_format.test
1.47
KB
-rw-r--r--
alter_table_redundant.test
481
B
-rw-r--r--
alter_table_stage_progress-mas...
53
B
-rw-r--r--
alter_table_stage_progress.tes...
1.04
KB
-rw-r--r--
analyze_index.test
994
B
-rw-r--r--
analyze_table.test
896
B
-rw-r--r--
attachable_trx.test
3.32
KB
-rw-r--r--
autoinc_debug.test
2.14
KB
-rw-r--r--
blob-crash-16k.test
2.66
KB
-rw-r--r--
blob-crash-4k.test
2.76
KB
-rw-r--r--
blob-crash.test
5.95
KB
-rw-r--r--
blob-update-debug.test
525
B
-rw-r--r--
blob_page_reserve.test
3.73
KB
-rw-r--r--
blob_redo-master.opt
57
B
-rw-r--r--
blob_redo.test
1.71
KB
-rw-r--r--
buf_pool_resize_oom-master.opt
37
B
-rw-r--r--
buf_pool_resize_oom.test
1.72
KB
-rw-r--r--
bulk_create_index_online.test
1.96
KB
-rw-r--r--
cascade_lock_wait.test
1014
B
-rw-r--r--
check_ibd_filesize_16k.test
1.89
KB
-rw-r--r--
check_sector_size-master.opt
125
B
-rw-r--r--
check_sector_size.test
1.95
KB
-rw-r--r--
checksum.test
681
B
-rw-r--r--
cmp_per_index-master.opt
63
B
-rw-r--r--
cmp_per_index.test
2.5
KB
-rw-r--r--
crc32_endianness.test
1.67
KB
-rw-r--r--
crc32_endianness.zip
1.86
KB
-rw-r--r--
create-index.test
314
B
-rw-r--r--
create_isl_with_direct-master....
31
B
-rw-r--r--
create_isl_with_direct.test
1.1
KB
-rw-r--r--
create_table.test
1.33
KB
-rw-r--r--
create_tablespace.test
36.63
KB
-rw-r--r--
create_tablespace_16k.test
26.23
KB
-rw-r--r--
create_tablespace_32k.test
3.97
KB
-rw-r--r--
create_tablespace_4k.test
14.72
KB
-rw-r--r--
create_tablespace_64k.test
4.12
KB
-rw-r--r--
create_tablespace_8k.test
19.2
KB
-rw-r--r--
create_tablespace_debug.test
3.97
KB
-rw-r--r--
create_tablespace_notembedded....
670
B
-rw-r--r--
create_tablespace_partition.te...
10.38
KB
-rw-r--r--
create_tablespace_replication....
1.76
KB
-rw-r--r--
deadlock_detect.test
921
B
-rw-r--r--
default_row_format.test
1.62
KB
-rw-r--r--
default_row_format_16k.test
9.49
KB
-rw-r--r--
default_row_format_compatibili...
5.75
KB
-rw-r--r--
default_row_format_tablespace....
1.16
KB
-rw-r--r--
deprecate_part_in_shared_ts.te...
4.38
KB
-rw-r--r--
disabled.def
404
B
-rw-r--r--
doublewrite.test
10.88
KB
-rw-r--r--
dropdb.test
251
B
-rw-r--r--
end_range_check.test
3.2
KB
-rw-r--r--
end_range_check_2.test
1.25
KB
-rw-r--r--
events-merge-tmp-path-master.o...
149
B
-rw-r--r--
events-merge-tmp-path.test
1.65
KB
-rw-r--r--
file_format_defaults-master.op...
122
B
-rw-r--r--
file_format_defaults.test
2.14
KB
-rw-r--r--
file_format_upgrade_16k.test
1.91
KB
-rw-r--r--
flush-hang.test
1.51
KB
-rw-r--r--
foreign_key.test
7.61
KB
-rw-r--r--
fts_exec_interrupt.test
961
B
-rw-r--r--
help_verbose.test
1.01
KB
-rw-r--r--
high_prio_trx_1.test
1.24
KB
-rw-r--r--
high_prio_trx_2.test
1.3
KB
-rw-r--r--
high_prio_trx_3.test
1.86
KB
-rw-r--r--
high_prio_trx_4.test
1.5
KB
-rw-r--r--
high_prio_trx_5.test
2.24
KB
-rw-r--r--
high_prio_trx_6.test
2
KB
-rw-r--r--
high_prio_trx_7.test
11.13
KB
-rw-r--r--
high_prio_trx_commit_crash.tes...
2.05
KB
-rw-r--r--
high_prio_trx_debug.test
1.6
KB
-rw-r--r--
high_prio_trx_fk.test
1.42
KB
-rw-r--r--
high_prio_trx_predicate.test
1.41
KB
-rw-r--r--
high_prio_trx_rpl.test
1.95
KB
-rw-r--r--
i_s_files_debug.test
751
B
-rw-r--r--
ibuf_not_empty-master.opt
30
B
-rw-r--r--
ibuf_not_empty.test
1.67
KB
-rw-r--r--
import.test
763
B
-rw-r--r--
import_compress_encrypt.test
6.84
KB
-rw-r--r--
import_compress_encrypt_upgrad...
2.46
KB
-rw-r--r--
import_export_4k.test
1.06
KB
-rw-r--r--
import_tablespace_page_corrupt...
1.2
KB
-rw-r--r--
import_tablespace_schema_missm...
3.56
KB
-rw-r--r--
import_update_stats.test
1.46
KB
-rw-r--r--
index-online-norebuild.test
1.8
KB
-rw-r--r--
index_length.test
1.28
KB
-rw-r--r--
index_merge_threshold.test
6.25
KB
-rw-r--r--
index_tree_operation.test
2.36
KB
-rw-r--r--
innodb-2byte-collation-master....
48
B
-rw-r--r--
innodb-2byte-collation.test
2.95
KB
-rw-r--r--
innodb-ac-non-locking-select.t...
3
KB
-rw-r--r--
innodb-alter-autoinc.test
2.53
KB
-rw-r--r--
innodb-alter-debug-wl6554-mast...
21
B
-rw-r--r--
innodb-alter-debug-wl6554.test
8.65
KB
-rw-r--r--
innodb-alter-debug.test
2.68
KB
-rw-r--r--
innodb-alter-nullable.test
1.93
KB
-rw-r--r--
innodb-alter-wl6554.test
2.26
KB
-rw-r--r--
innodb-alter.test
15.61
KB
-rw-r--r--
innodb-analyze.test
1.65
KB
-rw-r--r--
innodb-autoinc-18274.test
661
B
-rw-r--r--
innodb-autoinc-44030-master.op...
81
B
-rw-r--r--
innodb-autoinc-44030.test
1.61
KB
-rw-r--r--
innodb-autoinc-56228-master.op...
29
B
-rw-r--r--
innodb-autoinc-56228.test
784
B
-rw-r--r--
innodb-autoinc-master.opt
81
B
-rw-r--r--
innodb-autoinc-optimize.test
432
B
-rw-r--r--
innodb-autoinc.test
26.79
KB
-rw-r--r--
innodb-blob.test
6.62
KB
-rw-r--r--
innodb-bug-14068765.test
2.97
KB
-rw-r--r--
innodb-bug-14084530.test
966
B
-rw-r--r--
innodb-bug12552164.test
1.46
KB
-rw-r--r--
innodb-bug14219515.test
472
B
-rw-r--r--
innodb-change-buffer-recovery-...
92
B
-rw-r--r--
innodb-change-buffer-recovery....
2.3
KB
-rw-r--r--
innodb-consistent-master.opt
29
B
-rw-r--r--
innodb-consistent.test
1.24
KB
-rw-r--r--
innodb-import-partition-rpl.te...
3.46
KB
-rw-r--r--
innodb-import-partition.test
9.51
KB
-rw-r--r--
innodb-index-debug-master.opt
30
B
-rw-r--r--
innodb-index-debug.test
4.39
KB
-rw-r--r--
innodb-index-master.opt
30
B
-rw-r--r--
innodb-index-online-delete.tes...
1.06
KB
-rw-r--r--
innodb-index-online-fk.test
15.6
KB
-rw-r--r--
innodb-index-online-master.opt
127
B
-rw-r--r--
innodb-index-online-purge.test
2.07
KB
-rw-r--r--
innodb-index-online.test
13.83
KB
-rw-r--r--
innodb-index.test
33.48
KB
-rw-r--r--
innodb-index_ucs2.test
124
B
-rw-r--r--
innodb-isolation.test
11.03
KB
-rw-r--r--
innodb-large-prefix.test
1.13
KB
-rw-r--r--
innodb-lock-inherit-read_commi...
2.58
KB
-rw-r--r--
innodb-lock.test
4.86
KB
-rw-r--r--
innodb-master.opt
136
B
-rw-r--r--
innodb-multiple-tablespaces.te...
18.21
KB
-rw-r--r--
innodb-read-view.test
4.52
KB
-rw-r--r--
innodb-replace-debug.test
399
B
-rw-r--r--
innodb-semi-consistent-master....
29
B
-rw-r--r--
innodb-semi-consistent.test
1.83
KB
-rw-r--r--
innodb-status-output.test
2.86
KB
-rw-r--r--
innodb-system-table-view.test
5.99
KB
-rw-r--r--
innodb-table-online-master.opt
126
B
-rw-r--r--
innodb-table-online.test
11.63
KB
-rw-r--r--
innodb-timeout.test
3.63
KB
-rw-r--r--
innodb-truncate-debug.test
5.27
KB
-rw-r--r--
innodb-truncate.test
2.03
KB
-rw-r--r--
innodb-ucs2.test
11.43
KB
-rw-r--r--
innodb-update-insert.test
848
B
-rw-r--r--
innodb-wl5522-1.test
145
B
-rw-r--r--
innodb-wl5522-debug.test
31
KB
-rw-r--r--
innodb-wl5522.test
20.25
KB
-rw-r--r--
innodb-wl5980-alter.test
18.47
KB
-rw-r--r--
innodb-wl5980-debug.test
2.58
KB
-rw-r--r--
innodb-wl5980-discard.test
23.6
KB
-rw-r--r--
innodb-wl5980-linux-master.opt
28
B
-rw-r--r--
innodb-wl5980-linux.test
7.75
KB
-rw-r--r--
innodb-wl5980-windows-master.o...
28
B
-rw-r--r--
innodb-wl5980-windows.test
8.42
KB
-rw-r--r--
innodb-wl6045-1-master.opt
77
B
-rw-r--r--
innodb-wl6045-1.test
6.84
KB
-rw-r--r--
innodb-wl6045-linux.test
12.82
KB
-rw-r--r--
innodb-wl6445-1.test
21.96
KB
-rw-r--r--
innodb-wl6445-2.test
7.4
KB
-rw-r--r--
innodb-wl6445.test
2.3
KB
-rw-r--r--
innodb.test
79.88
KB
-rw-r--r--
innodb_32k.test
198
B
-rw-r--r--
innodb_64k-master.opt
29
B
-rw-r--r--
innodb_64k.test
663
B
-rw-r--r--
innodb_autoinc_lock_mode_zero-...
29
B
-rw-r--r--
innodb_autoinc_lock_mode_zero....
1.1
KB
-rw-r--r--
innodb_autoinc_reset.test
519
B
-rw-r--r--
innodb_buffer_pool_dump_pct.te...
4.74
KB
-rw-r--r--
innodb_buffer_pool_load-master...
30
B
-rw-r--r--
innodb_buffer_pool_load.test
7.62
KB
-rw-r--r--
innodb_buffer_pool_load_now-ma...
113
B
-rw-r--r--
innodb_buffer_pool_load_now.te...
5.88
KB
-rw-r--r--
innodb_buffer_pool_resize-mast...
29
B
-rw-r--r--
innodb_buffer_pool_resize.test
2.26
KB
-rw-r--r--
innodb_buffer_pool_resize_debu...
64
B
-rw-r--r--
innodb_buffer_pool_resize_debu...
7.37
KB
-rw-r--r--
innodb_buffer_pool_resize_with...
65
B
-rw-r--r--
innodb_buffer_pool_resize_with...
2.06
KB
-rw-r--r--
innodb_bug-13628249.test
2.26
KB
-rw-r--r--
innodb_bug11754376.test
406
B
-rw-r--r--
innodb_bug11766634-master.opt
16
B
-rw-r--r--
innodb_bug11766634.test
1.82
KB
-rw-r--r--
innodb_bug11789106.test
546
B
-rw-r--r--
innodb_bug11933790.test
928
B
-rw-r--r--
innodb_bug12400341-master.opt
75
B
-rw-r--r--
innodb_bug12400341.test
2.65
KB
-rw-r--r--
innodb_bug12429573.test
1.4
KB
-rw-r--r--
innodb_bug12661768.test
2.03
KB
-rw-r--r--
innodb_bug14006907.test
1.38
KB
-rw-r--r--
innodb_bug14007109.test
1.19
KB
-rw-r--r--
innodb_bug14007649.test
1.1
KB
-rw-r--r--
innodb_bug14147491-master.opt
103
B
-rw-r--r--
innodb_bug14147491.test
2.76
KB
-rw-r--r--
innodb_bug14169459.test
1.96
KB
-rw-r--r--
innodb_bug14676111.test
3.92
KB
-rw-r--r--
innodb_bug14704286.test
2.03
KB
-rw-r--r--
innodb_bug19164038-master.opt
30
B
-rw-r--r--
innodb_bug19164038.test
1.27
KB
-rw-r--r--
innodb_bug21704.test
1.66
KB
-rw-r--r--
innodb_bug30113362.test
6.65
KB
-rw-r--r--
innodb_bug30423.test
6.45
KB
-rw-r--r--
innodb_bug30594501-master.opt
31
B
-rw-r--r--
innodb_bug30594501.test
552
B
-rw-r--r--
innodb_bug30919-master.opt
29
B
-rw-r--r--
innodb_bug30919.test
2.31
KB
-rw-r--r--
innodb_bug31205266.test
1.56
KB
-rw-r--r--
innodb_bug34053.test
1.6
KB
-rw-r--r--
innodb_bug34300.test
881
B
-rw-r--r--
innodb_bug35220.test
416
B
-rw-r--r--
innodb_bug38231.test
1.64
KB
-rw-r--r--
innodb_bug39438-master.opt
26
B
-rw-r--r--
innodb_bug39438.test
2.19
KB
-rw-r--r--
innodb_bug40360.test
340
B
-rw-r--r--
innodb_bug40565.test
327
B
-rw-r--r--
innodb_bug41904.test
328
B
-rw-r--r--
innodb_bug42101-nonzero-master...
30
B
-rw-r--r--
innodb_bug42101-nonzero.test
653
B
-rw-r--r--
innodb_bug42101.test
577
B
-rw-r--r--
innodb_bug42419.test
2.19
KB
-rw-r--r--
innodb_bug44032.test
543
B
-rw-r--r--
innodb_bug44369.test
530
B
-rw-r--r--
innodb_bug44571.test
788
B
-rw-r--r--
innodb_bug45357.test
326
B
-rw-r--r--
innodb_bug46000.test
941
B
-rw-r--r--
innodb_bug46676.test
602
B
-rw-r--r--
innodb_bug47167-master.opt
16
B
-rw-r--r--
innodb_bug47167.test
1.41
KB
-rw-r--r--
innodb_bug47621.test
1.79
KB
-rw-r--r--
innodb_bug47622.test
1.58
KB
-rw-r--r--
innodb_bug47777.test
972
B
-rw-r--r--
innodb_bug48024.test
863
B
-rw-r--r--
innodb_bug49164.test
928
B
-rw-r--r--
innodb_bug51378.test
2.53
KB
-rw-r--r--
innodb_bug51920.test
988
B
-rw-r--r--
innodb_bug52199.test
210
B
-rw-r--r--
innodb_bug52663.test
1003
B
-rw-r--r--
innodb_bug53046.test
1.13
KB
-rw-r--r--
innodb_bug53290.test
840
B
-rw-r--r--
innodb_bug53592.test
2.6
KB
-rw-r--r--
innodb_bug53674-master.opt
65
B
-rw-r--r--
innodb_bug53674.test
259
B
-rw-r--r--
innodb_bug53756-master.opt
36
B
-rw-r--r--
innodb_bug53756.test
4.62
KB
-rw-r--r--
innodb_bug54044.test
606
B
-rw-r--r--
innodb_bug56143.test
74.27
KB
-rw-r--r--
innodb_bug56716.test
268
B
-rw-r--r--
innodb_bug56947.test
472
B
-rw-r--r--
innodb_bug57252.test
1.27
KB
-rw-r--r--
innodb_bug57255.test
889
B
-rw-r--r--
innodb_bug57904.test
908
B
-rw-r--r--
innodb_bug59307.test
633
B
-rw-r--r--
innodb_bug59410.test
926
B
-rw-r--r--
innodb_bug59641.test
1.17
KB
-rw-r--r--
innodb_bug59733.test
2
KB
-rw-r--r--
innodb_bug60049-master.opt
25
B
-rw-r--r--
innodb_bug60049.test
1.76
KB
-rw-r--r--
innodb_bug60196-master.opt
27
B
-rw-r--r--
innodb_bug60196.test
3.15
KB
-rw-r--r--
innodb_bug60229.test
1.34
KB
-rw-r--r--
innodb_bug70867.test
1.29
KB
-rw-r--r--
innodb_bulk_create_index.test
1.89
KB
-rw-r--r--
innodb_bulk_create_index_debug...
651
B
-rw-r--r--
innodb_bulk_create_index_flush...
1.34
KB
-rw-r--r--
innodb_bulk_create_index_repli...
4.66
KB
-rw-r--r--
innodb_bulk_create_index_small...
2.81
KB
-rw-r--r--
innodb_corrupt_bit.test
2.67
KB
-rw-r--r--
innodb_corrupt_readonly.test
1.34
KB
-rw-r--r--
innodb_ctype_ldml-master.opt
80
B
-rw-r--r--
innodb_ctype_ldml.test
15.36
KB
-rw-r--r--
innodb_deadlock_with_autoinc-m...
29
B
-rw-r--r--
innodb_deadlock_with_autoinc.t...
1.22
KB
-rw-r--r--
innodb_file_format-master.opt
16
B
-rw-r--r--
innodb_file_format.test
1.32
KB
-rw-r--r--
innodb_file_limit_check.test
829
B
-rw-r--r--
innodb_force_recovery.test
3.19
KB
-rw-r--r--
innodb_fts_limit_check.test
891
B
-rw-r--r--
innodb_i_s_innodb_locks.test
4.54
KB
-rw-r--r--
innodb_i_s_innodb_trx.test
2.36
KB
-rw-r--r--
innodb_information_schema_buff...
2.39
KB
-rw-r--r--
innodb_io_pf.test
398
B
-rw-r--r--
innodb_lock_wait_timeout_1-mas...
29
B
-rw-r--r--
innodb_lock_wait_timeout_1.tes...
8.06
KB
-rw-r--r--
innodb_misc1-master.opt
55
B
-rw-r--r--
innodb_misc1.test
31.97
KB
-rw-r--r--
innodb_multi_update.test
2.04
KB
-rw-r--r--
innodb_mysql-master.opt
82
B
-rw-r--r--
innodb_mysql.test
27.09
KB
-rw-r--r--
innodb_mysql_rbk-master.opt
60
B
-rw-r--r--
innodb_mysql_rbk.test
849
B
-rw-r--r--
innodb_notembedded.test
1.13
KB
-rw-r--r--
innodb_page_size_func.test
11.26
KB
-rw-r--r--
innodb_pagesize_max_recordsize...
17.3
KB
-rw-r--r--
innodb_prefix_index_check.test
1.25
KB
-rw-r--r--
innodb_prefix_index_restart_se...
3.51
KB
-rw-r--r--
innodb_rename_index.test
16.76
KB
-rw-r--r--
innodb_rename_index_err.test
2.01
KB
-rw-r--r--
innodb_replace.test
5.42
KB
-rw-r--r--
innodb_row_log_read.test
1.42
KB
-rw-r--r--
innodb_stats.test
1.89
KB
-rw-r--r--
innodb_stats_auto_recalc.test
1.76
KB
-rw-r--r--
innodb_stats_auto_recalc_ddl.t...
1.65
KB
-rw-r--r--
innodb_stats_auto_recalc_lots....
932
B
-rw-r--r--
innodb_stats_auto_recalc_on_no...
1.87
KB
-rw-r--r--
innodb_stats_create_on_corrupt...
1.32
KB
-rw-r--r--
innodb_stats_create_table.test
1.43
KB
-rw-r--r--
innodb_stats_del_mark-master.o...
40
B
-rw-r--r--
innodb_stats_del_mark.test
3.6
KB
-rw-r--r--
innodb_stats_drop_locked.test
1.41
KB
-rw-r--r--
innodb_stats_external_pages.te...
2.62
KB
-rw-r--r--
innodb_stats_fetch.test
2.13
KB
-rw-r--r--
innodb_stats_fetch_corrupted.t...
1.64
KB
-rw-r--r--
innodb_stats_fetch_nonexistent...
1.14
KB
-rw-r--r--
innodb_stats_flag_global_off-m...
28
B
-rw-r--r--
innodb_stats_flag_global_off.t...
324
B
-rw-r--r--
innodb_stats_flag_global_on-ma...
28
B
-rw-r--r--
innodb_stats_flag_global_on.te...
323
B
-rw-r--r--
innodb_stats_rename_table.test
1.25
KB
-rw-r--r--
innodb_stats_rename_table_if_e...
1.43
KB
-rw-r--r--
innodb_stats_sample_pages.test
1.72
KB
-rw-r--r--
innodb_stats_table_flag_auto_r...
2.23
KB
-rw-r--r--
innodb_stats_table_flag_sample...
2.73
KB
-rw-r--r--
innodb_sys_var_valgrind.test
1.99
KB
-rw-r--r--
innodb_tablespace.test
13.91
KB
-rw-r--r--
innodb_tablespace_zip.test
1.32
KB
-rw-r--r--
innodb_thread_concurrency_debu...
1.16
KB
-rw-r--r--
innodb_timeout_rollback-master...
58
B
-rw-r--r--
innodb_timeout_rollback.test
108
B
-rw-r--r--
innodb_trx_weight.test
3.72
KB
-rw-r--r--
innodb_upd_stats_if_needed_not...
1.04
KB
-rw-r--r--
innodb_ut_format_name.test
298
B
-rw-r--r--
innodb_wl6326.test
14.46
KB
-rw-r--r--
innodb_wl6326_big.test
24.37
KB
-rw-r--r--
innodb_wl6469_1.test
2.08
KB
-rw-r--r--
innodb_wl6469_debug.test
2.94
KB
-rw-r--r--
innodb_wl6470.test
4.42
KB
-rw-r--r--
innodb_wl6470_debug.test
1.78
KB
-rw-r--r--
innodb_wl6501_crash_1.test
798
B
-rw-r--r--
innodb_wl6501_crash_2.test
798
B
-rw-r--r--
innodb_wl6501_crash_6.test
713
B
-rw-r--r--
innodb_wl6501_crash_7.test
713
B
-rw-r--r--
innodb_wl6501_crash_8.test
2.39
KB
-rw-r--r--
innodb_wl6560_1.test
11.71
KB
-rw-r--r--
innodb_wl6560_debug.test
5.9
KB
-rw-r--r--
innodb_wl6915.test
3.99
KB
-rw-r--r--
innodb_wl6915_debug.test
5.43
KB
-rw-r--r--
innodb_wl8114.test
1.52
KB
-rw-r--r--
insert_debug.test
1.13
KB
-rw-r--r--
iodku.test
5.65
KB
-rw-r--r--
iodku_debug.test
6.38
KB
-rw-r--r--
log_alter_table.test
1.81
KB
-rw-r--r--
log_corruption.test
7.06
KB
-rw-r--r--
log_corruption.zip
92.47
KB
-rw-r--r--
log_corruption0.zip
1.18
KB
-rw-r--r--
log_corruption1.zip
1.23
KB
-rw-r--r--
log_corruption2.zip
1.27
KB
-rw-r--r--
log_corruption3.zip
1.27
KB
-rw-r--r--
log_corruption4.zip
1.28
KB
-rw-r--r--
log_corruption4a.zip
1.28
KB
-rw-r--r--
log_corruption5.zip
1.28
KB
-rw-r--r--
log_corruption6.zip
1.28
KB
-rw-r--r--
log_file.test
8.9
KB
-rw-r--r--
log_file_name.test
9.17
KB
-rw-r--r--
log_file_name_debug.test
751
B
-rw-r--r--
log_file_size.test
6.3
KB
-rw-r--r--
log_file_size_1-master.opt
14
B
-rw-r--r--
log_file_size_1.test
8.45
KB
-rw-r--r--
log_file_size_checkpoint.test
1.14
KB
-rw-r--r--
missing_tablespaces.test
2.34
KB
-rw-r--r--
monitor.test
13.96
KB
-rw-r--r--
monitor_restart.test
807
B
-rw-r--r--
mysqldump_max_recordsize.test
13.96
KB
-rw-r--r--
optimizer_temporary_table-mast...
15
B
-rw-r--r--
optimizer_temporary_table.test
4.63
KB
-rw-r--r--
page_reorganize.test
1.31
KB
-rw-r--r--
partition-blob.test
1.43
KB
-rw-r--r--
partition-upgrade.test
7.46
KB
-rw-r--r--
partition.test
20.89
KB
-rw-r--r--
portability_wl5980_linux.zip
473.02
KB
-rw-r--r--
portability_wl5980_windows.zip
514.24
KB
-rw-r--r--
readahead.test
679
B
-rw-r--r--
readonly.test
1.17
KB
-rw-r--r--
records_in_range.test
24.93
KB
-rw-r--r--
redo_log_during_checkpoint.tes...
2.59
KB
-rw-r--r--
rename_table.test
914
B
-rw-r--r--
row_format_redundant.test
2.71
KB
-rw-r--r--
sp_temp_table.test
2.51
KB
-rw-r--r--
stored_fk.test
3.46
KB
-rw-r--r--
strict_checksum.test
2.95
KB
-rw-r--r--
strict_mode.test
3.33
KB
-rw-r--r--
sys_tablestats.test
1.01
KB
-rw-r--r--
table_compress.test
14.09
KB
-rw-r--r--
table_encrypt_1.test
10.06
KB
-rw-r--r--
table_encrypt_2-master.opt
94
B
-rw-r--r--
table_encrypt_2.test
5.46
KB
-rw-r--r--
table_encrypt_3.test
31.16
KB
-rw-r--r--
table_encrypt_4.test
6.83
KB
-rw-r--r--
table_encrypt_5-master.opt
20
B
-rw-r--r--
table_encrypt_5.test
30.54
KB
-rw-r--r--
table_encrypt_debug.test
6.16
KB
-rw-r--r--
table_encrypt_fts.test
3.22
KB
-rw-r--r--
table_encrypt_kill.test
15.3
KB
-rw-r--r--
table_encryption-master.opt
20
B
-rw-r--r--
table_encryption.test
3.25
KB
-rw-r--r--
tablespace_crash.test
7.61
KB
-rw-r--r--
tablespace_embedded.test
246
B
-rw-r--r--
tablespace_embedded_windows.te...
242
B
-rw-r--r--
tablespace_per_table.test
13.03
KB
-rw-r--r--
tablespace_per_table_not_windo...
6.58
KB
-rw-r--r--
tablespace_per_table_windows.t...
3.13
KB
-rw-r--r--
tablespace_portability.test
1.64
KB
-rw-r--r--
tablespace_portability_windows...
751
B
-rw-r--r--
timestamp.test
787
B
-rw-r--r--
tinytext-groupby.test
1.26
KB
-rw-r--r--
tmpdir.test
1.9
KB
-rw-r--r--
trx_id_future.test
1.8
KB
-rw-r--r--
undo.test
1.48
KB
-rw-r--r--
update-cascade.test
6.46
KB
-rw-r--r--
update_time-master.opt
30
B
-rw-r--r--
update_time.test
2.25
KB
-rw-r--r--
update_time_wl6658.test
8.3
KB
-rw-r--r--
virtual_basic.test
44.54
KB
-rw-r--r--
virtual_blob.test
468
B
-rw-r--r--
virtual_debug.test
18.75
KB
-rw-r--r--
virtual_debug_purge.test
4.27
KB
-rw-r--r--
virtual_fk.test
25.3
KB
-rw-r--r--
virtual_fk_restart.test
1.59
KB
-rw-r--r--
virtual_index.test
8.38
KB
-rw-r--r--
virtual_purge.test
3.21
KB
-rw-r--r--
virtual_stats.test
1.43
KB
-rw-r--r--
xa_prepare_lock_release.test
1.57
KB
-rw-r--r--
xa_recovery.test
894
B
-rw-r--r--
xa_recovery_debug.test
989
B
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : table_encrypt_3.test
# InnoDB transparent encrypted tablespace # This test case will test basic encryption support features. --source include/no_valgrind_without_big.inc --source include/have_innodb.inc --source include/not_embedded.inc --source include/have_innodb_max_16k.inc --disable_query_log call mtr.add_suppression("\\[ERROR\\] InnoDB: Encryption can't find master key, please check the keyring plugin is loaded."); call mtr.add_suppression("InnoDB: The error means that another program is using InnoDB's files"); call mtr.add_suppression("\\[ERROR\\] InnoDB: Operating system error number 32 in a file operation."); --enable_query_log let $innodb_file_per_table = `SELECT @@innodb_file_per_table`; #------------------------------------------------------------------------------ # InnoDB transparent encrypted tablespace: # 1) Try creating encrypt table without loading keying plugin # 2) Run , ALTER INSTANCE ROTATE INNODB MASTER KEY , when plugin is not loaded # 3) Try , UNINSTALL PLUGIN keyring_file , when plugin is not loaded --echo # Create encrypt table before loading keyring plugin SET GLOBAL innodb_file_per_table = 1; SELECT @@innodb_file_per_table; --disable_warnings DROP TABLE IF EXISTS t_encrypt; --enable_warnings # Create encryp table --error ER_CANNOT_FIND_KEY_IN_KEYRING CREATE TABLE t_encrypt(c1 INT, c2 char(20)) ENCRYPTION="Y" ENGINE = InnoDB; # Uninstall keyring plugin whuch is not loaded yet --error ER_SP_DOES_NOT_EXIST UNINSTALL PLUGIN keyring_file; --error ER_CANNOT_FIND_KEY_IN_KEYRING ALTER INSTANCE ROTATE INNODB MASTER KEY; --echo # Starting server with keyring plugin # restart with keying let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --replace_regex /\.dll/.so/ --source include/restart_mysqld.inc #------------------------------------------------------------------------------ # InnoDB transparent encrypted tablespace: # 1) With JSON , VIRTUAL/GENERATED column # 2) With rtree ( spatial index) # 3) Check "ALTER INSTANCE .." not conflict with DML/explicit locks --disable_warnings DROP DATABASE IF EXISTS tde_db; DROP TABLE IF EXISTS tde_db.t_encrypt; CREATE DATABASE tde_db; --enable_warnings SET GLOBAL innodb_file_per_table = 1; SELECT @@innodb_file_per_table; CREATE TABLE tde_db.t_encrypt(c4 JSON , c5 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_a')) STORED, c6 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_b')) VIRTUAL, c7 POINT NOT NULL, spatial INDEX idx2 (c7) ) ENCRYPTION="Y" ENGINE = InnoDB; SHOW CREATE TABLE tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c4,c7) VALUES('{ "key_a": 1, "key_b": 2, "key_c": 3 }',ST_GeomFromText('POINT(383293632 1754448)')); INSERT INTO tde_db.t_encrypt(c4,c7) select c4,c7 from tde_db.t_encrypt; SELECT c4,c5,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SHOW CREATE TABLE tde_db.t_encrypt; # Lock table and try to rotate key (key rotation , # involves re-writting secure key) --echo # In connection 1 connect (con1,localhost,root,,); LOCK TABLES tde_db.t_encrypt WRITE; --echo # In connection default connection default; #show open tables WHERE Table LIKE 'tde_db.t_encrypt' AND In_use > 0; SHOW OPEN TABLES LIKE 't_encrypt'; --echo "ALTER INSTANCE.." do not conflict with "LOCK TABLE .." COMMAND ALTER INSTANCE ROTATE INNODB MASTER KEY; --echo # In connection 1 connection con1; INSERT INTO tde_db.t_encrypt(c4,c7) VALUES('{ "key_a": 1, "key_b": 2, "key_c": 3 }',ST_GeomFromText('POINT(383293632 1754448)')); SELECT c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; UNLOCK TABLES; disconnect con1; --echo # In connection default connection default; SELECT c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; # Restart to confirm the encryption info can be retrieved properly. --exec echo "wait" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect -- send_shutdown -- source include/wait_until_disconnected.inc --exec echo "restart:--early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT" > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect --enable_reconnect --source include/wait_until_connected_again.inc --disable_reconnect SELECT c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; DROP DATABASE tde_db; # Cleanup eval SET GLOBAL innodb_file_per_table=$innodb_file_per_table; #------------------------------------------------------------------------------ # InnoDB transparent encrypted tablespace: # 1) with blob # 2) check value read properly after restart --disable_warnings DROP DATABASE IF EXISTS tde_db; CREATE DATABASE tde_db; USE tde_db; DROP TABLE IF EXISTS tde_db.t_encrypt; DROP TABLE IF EXISTS tde_db.t_encrypt_1; --enable_warnings let $innodb_file_per_table = `SELECT @@innodb_file_per_table`; SET GLOBAL innodb_file_per_table = 1; SELECT @@innodb_file_per_table; # Create a table with encryption CREATE TABLE tde_db.t_encrypt(c1 INT, c2 char(20), c3 BLOB) ENCRYPTION="Y" ENGINE = InnoDB; --error ER_INVALID_ENCRYPTION_OPTION CREATE TABLE tde_db.t_encrypt_1(c1 INT, c2 char(20)) ENCRYPTION="Yes" ENGINE = InnoDB; CREATE TABLE tde_db.t_encrypt_1(c1 INT, c2 char(20)) ENCRYPTION="y" ENGINE = InnoDB; DROP TABLE tde_db.t_encrypt_1; CREATE TABLE tde_db.t_encrypt_1(c1 INT, c2 char(20),c3 BLOB) ENGINE = InnoDB; SHOW CREATE TABLE tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt VALUES(0, "aaaaa",repeat('A', 20000)); INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt LIMIT 10; --echo #Insert into non encrypted table INSERT INTO tde_db.t_encrypt_1 SELECT * FROM tde_db.t_encrypt; SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt_1 LIMIT 10; SELECT COUNT(*) FROM tde_db.t_encrypt_1; # Restart to confirm the encryption info can be retrieved properly. --echo # Starting server with keyring plugin restart with keying let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --source include/restart_mysqld.inc SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt LIMIT 10; SELECT COUNT(*) FROM tde_db.t_encrypt; --echo #check non encrypted table SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt_1 LIMIT 10; SELECT COUNT(*) FROM tde_db.t_encrypt_1; DROP TABLE tde_db.t_encrypt; DROP TABLE tde_db.t_encrypt_1; # Cleanup eval SET GLOBAL innodb_file_per_table=$innodb_file_per_table; #------------------------------------------------------------------------------ # InnoDB transparent encrypted tablespace: # 1) With different row format # 2) With partition table # 3) Negative cases # a) error when innodb_file_per_table=0 # b) error when shared tablespace is specified during create # c) error with temp table # d) ENCRYPTION=Y is ignored for myisam # 4) Create table from procedure --disable_warnings DROP DATABASE IF EXISTS tde_db; DROP TABLE IF EXISTS tde_db.t_encrypt; CREATE DATABASE tde_db; USE tde_db; --enable_warnings --echo # File per table is set 0. Encryption not possible. SET GLOBAL innodb_file_per_table = 0; SELECT @@innodb_file_per_table; --error ER_TABLESPACE_CANNOT_ENCRYPT CREATE TABLE tde_db.t_encrypt(c4 JSON , c5 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_a')) STORED, c6 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_b')) VIRTUAL, c7 POINT NOT NULL, spatial INDEX idx2 (c7) ) ENCRYPTION="Y" ENGINE = InnoDB; SET GLOBAL innodb_file_per_table = 1; SELECT @@innodb_file_per_table; CREATE TABLESPACE s_alt1 ADD DATAFILE 's_alt1.ibd'; --error ER_TABLESPACE_CANNOT_ENCRYPT CREATE TABLE tde_db.t_encrypt (a int, b text) ENCRYPTION="Y" TABLESPACE=`s_alt1` ENGINE=InnoDB; DROP TABLESPACE s_alt1; --error ER_TABLESPACE_CANNOT_ENCRYPT CREATE TEMPORARY TABLE tde_db.t_encrypt (a int, b text) ENCRYPTION="Y" ENGINE=InnoDB; # Now error/warning shown --error ER_ILLEGAL_HA_CREATE_OPTION CREATE TABLE tde_db.t_encrypt_myisam (a int, b text) ENCRYPTION="Y" ENGINE=MyISAM; # Create a table with encryption and different row format DELIMITER |; CREATE PROCEDURE tde_db.row_format_t_encrypt(row_form VARCHAR(1000)) begin declare i int default 1; declare has_error int default 0; DECLARE CONTINUE HANDLER FOR 1062 SET has_error = 1; DROP TABLE IF EXISTS tde_db.t_encrypt; SET @sql_text = CONCAT('CREATE TABLE tde_db.t_encrypt ('," c2 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,c3 VARCHAR(255), c4 JSON ,c5 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_a')) STORED,c6 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_b')) VIRTUAL,c7 POINT NOT NULL,spatial INDEX idx2 (c7) ) ", ' ENCRYPTION="Y" ', row_form ,' ENGINE=InnoDB'); PREPARE stmt FROM @sql_text; EXECUTE stmt; DEALLOCATE PREPARE stmt; SHOW CREATE TABLE tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4,c7) VALUES (REPEAT('a',200),'{ "key_a": 1, "key_b": 2, "key_c": 3 }',ST_GeomFromText('POINT(383293632 1754448)')); INSERT INTO tde_db.t_encrypt(c3,c4,c7) SELECT c3,c4,c7 FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4,c7) SELECT c3,c4,c7 FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4,c7) SELECT c3,c4,c7 FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4,c7) SELECT c3,c4,c7 FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4,c7) SELECT c3,c4,c7 FROM tde_db.t_encrypt; SELECT COUNT(*) FROM tde_db.t_encrypt; SELECT c2,c4,c5,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT c2,c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; DELETE FROM tde_db.t_encrypt WHERE c2 > 10; UPDATE tde_db.t_encrypt SET c2 = 100 WHERE c2=1; SELECT c2,c4,c5,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT c2,c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SHOW CREATE TABLE tde_db.t_encrypt; end| DELIMITER ;| call tde_db.row_format_t_encrypt(" ROW_FORMAT=DYNAMIC "); --echo # restart with keying let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --source include/restart_mysqld.inc SELECT c2,c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT COUNT(*) FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4,c7) SELECT c3,c4,c7 FROM tde_db.t_encrypt; SELECT COUNT(*) FROM tde_db.t_encrypt; call tde_db.row_format_t_encrypt(" ROW_FORMAT=COMPACT "); --echo # restart with keying let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --source include/restart_mysqld.inc SELECT c2,c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT COUNT(*) FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4,c7) SELECT c3,c4,c7 FROM tde_db.t_encrypt; SELECT COUNT(*) FROM tde_db.t_encrypt; call tde_db.row_format_t_encrypt(" ROW_FORMAT=REDUNDANT "); --echo # restart with keying let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --source include/restart_mysqld.inc SELECT c2,c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT COUNT(*) FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4,c7) SELECT c3,c4,c7 FROM tde_db.t_encrypt; SELECT COUNT(*) FROM tde_db.t_encrypt; call tde_db.row_format_t_encrypt(" ROW_FORMAT=COMPRESSED " ); --echo # restart with keying let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --source include/restart_mysqld.inc SELECT c2,c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT COUNT(*) FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4,c7) SELECT c3,c4,c7 FROM tde_db.t_encrypt; SELECT COUNT(*) FROM tde_db.t_encrypt; call tde_db.row_format_t_encrypt(" ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4 "); --echo # restart with keying let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --source include/restart_mysqld.inc SELECT c2,c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT COUNT(*) FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4,c7) SELECT c3,c4,c7 FROM tde_db.t_encrypt; SELECT COUNT(*) FROM tde_db.t_encrypt; #call tde_db.row_format_t_encrypt(" ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8 "); #call tde_db.row_format_t_encrypt(" ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=16 "); --echo # Create partition table DROP TABLE tde_db.t_encrypt; CREATE TABLE tde_db.t_encrypt (c2 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,c3 VARCHAR(255), c4 JSON ,c5 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_a')) STORED,c6 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_b')) VIRTUAL ) ENCRYPTION="Y" ENGINE=InnoDB PARTITION BY RANGE (c2) (PARTITION p1 VALUES LESS THAN (4),PARTITION p2 VALUES LESS THAN (8),PARTITION p3 VALUES LESS THAN (1000)) ; SHOW CREATE TABLE tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4) VALUES (REPEAT('a',200),'{ "key_a": 1, "key_b": 2, "key_c": 3 }'); INSERT INTO tde_db.t_encrypt(c3,c4) SELECT c3,c4 FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4) SELECT c3,c4 FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4) SELECT c3,c4 FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4) SELECT c3,c4 FROM tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt(c3,c4) SELECT c3,c4 FROM tde_db.t_encrypt; SELECT c2,c4,c5 FROM tde_db.t_encrypt LIMIT 10; SELECT c2,c4,c5,c6 FROM tde_db.t_encrypt LIMIT 10; DELETE FROM tde_db.t_encrypt WHERE c2 > 10; UPDATE tde_db.t_encrypt SET c2 = 100 WHERE c2=1; SELECT c2,c4,c5 FROM tde_db.t_encrypt LIMIT 10; SELECT c2,c4,c5,c6 FROM tde_db.t_encrypt LIMIT 10; ALTER TABLE tde_db.t_encrypt TRUNCATE PARTITION p2; SELECT c2,c4,c5 FROM tde_db.t_encrypt LIMIT 10; SELECT c2,c4,c5,c6 FROM tde_db.t_encrypt LIMIT 10; SHOW CREATE TABLE tde_db.t_encrypt; --echo # restart with keying let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --source include/restart_mysqld.inc SELECT c2,c4,c5,c6 FROM tde_db.t_encrypt LIMIT 10; DROP TABLE tde_db.t_encrypt; DROP DATABASE tde_db; # Cleanup eval SET GLOBAL innodb_file_per_table=$innodb_file_per_table; #------------------------------------------------------------------------------ # InnoDB transparent encrypted tablespace: # With concurrent read/write/alter instance statements --disable_warnings DROP DATABASE IF EXISTS tde_db; DROP TABLE IF EXISTS tde_db. t_encrypt; CREATE DATABASE tde_db; USE tde_db; --enable_warnings SET GLOBAL innodb_file_per_table = 1; SELECT @@innodb_file_per_table; # Create a table with encryption CREATE TABLE tde_db.t_encrypt(c2 INT NOT NULL PRIMARY KEY, c3 CHAR(255) Default 'No text', c4 JSON , c5 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_a')) STORED, c6 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_b')) VIRTUAL, c7 POINT NOT NULL, spatial INDEX idx2 (c7) ) ENCRYPTION="Y" ENGINE = InnoDB; DELIMITER |; CREATE PROCEDURE tde_db.populate_t_encrypt() begin declare i int default 1; declare has_error int default 0; DECLARE CONTINUE HANDLER FOR 1062 SET has_error = 1; while (i <= 2000) DO insert into tde_db.t_encrypt(c2,c3,c4,c7) VALUES(i,CONCAT(REPEAT('a',200),LPAD(CAST(i AS CHAR),4,'0')),'{ "key_a": 1, "key_b": 2, "key_c": 3 }',ST_GeomFromText('POINT(383293632 1754448)')); set i = i + 1; end while; end| CREATE PROCEDURE tde_db.populate_t_encrypt_small() begin declare i int default 1; declare has_error int default 0; DECLARE CONTINUE HANDLER FOR 1062 SET has_error = 1; while (i <= 500) DO insert into tde_db.t_encrypt(c2,c3,c4,c7) VALUES(i,CONCAT(REPEAT('a',200),LPAD(CAST(i AS CHAR),4,'0')),'{ "key_a": 1, "key_b": 2, "key_c": 3 }',ST_GeomFromText('POINT(383293632 1754448)')); set i = i + 1; end while; end| CREATE PROCEDURE tde_db.read_t_encrypt() begin declare i int default 1; while (i <= 30) DO SELECT * FROM (SELECT * FROM tde_db.t_encrypt ORDER BY RAND() LIMIT 1) AS A WHERE A.c2 < 0 ; set i = i + 1; end while; end| CREATE PROCEDURE tde_db.rotate_master_key() begin declare i int default 1; declare has_error int default 0; while (i <= 500) DO ALTER INSTANCE ROTATE INNODB MASTER KEY; set i = i + 1; end while; end| CREATE PROCEDURE tde_db.create_encrypt_table(encrypt VARCHAR(5)) begin declare i int default 1; declare has_error int default 0; while (i <= 50) DO SET @sql_text = CONCAT('CREATE TABLE ',CONCAT('tde_db.t_encrypt_',encrypt,'_',i),' (c1 INT) ENCRYPTION="',encrypt,'"' ,' ENGINE=InnoDB'); PREPARE stmt FROM @sql_text; EXECUTE stmt; DEALLOCATE PREPARE stmt; set i = i + 1; end while; end| DELIMITER ;| SHOW CREATE TABLE tde_db.t_encrypt; --echo # In connection con1 - Running insert connect (con1,localhost,root,,); send call tde_db.populate_t_encrypt(); --echo # In connection con2 - Running insert connect (con2,localhost,root,,); send call tde_db.populate_t_encrypt_small(); --echo # In connection con3 : Running select connect (con3,localhost,root,,); send call tde_db.read_t_encrypt(); --echo # In connection con4 : Running select connect (con4,localhost,root,,); send call tde_db.read_t_encrypt(); --echo # In connection con5 - Running "alter instance" connect (con5,localhost,root,,); send call tde_db.rotate_master_key(); --echo # In connection con6 - Running "alter instance" connect (con6,localhost,root,,); send call tde_db.rotate_master_key(); --enable_query_log --echo # In connection con7 - Running "create table" connect (con7,localhost,root,,); send call tde_db.create_encrypt_table("Y"); --enable_query_log --echo # In connection con8 - Running "create table" connect (con8,localhost,root,,); send call tde_db.create_encrypt_table("N"); --enable_query_log --echo # In connection con1 connection con1; --disable_query_log reap; --enable_query_log disconnect con1; --echo # In connection con2 connection con2; --disable_query_log reap; --enable_query_log disconnect con2; --echo # In connection con3 connection con3; --disable_query_log reap; --enable_query_log disconnect con3; --echo # In connection con4 connection con4; --disable_query_log reap; --enable_query_log disconnect con4; --echo # In connection con5 connection con5; --disable_query_log reap; --enable_query_log disconnect con5; --echo # In connection con6 connection con6; --disable_query_log reap; --enable_query_log disconnect con6; --echo # In connection con7 connection con7; --disable_query_log reap; --enable_query_log disconnect con7; --echo # In connection con8 connection con8; --disable_query_log reap; --enable_query_log disconnect con8; connection default; USE tde_db; SELECT c2,right(c3,20),c4,c5,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT c2,right(c3,20),c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT COUNT(*) FROM tde_db.t_encrypt; SELECT c2,right(c3,20),c4,c5,ST_AsText(c7) FROM tde_db.t_encrypt WHERE c2%200 = 0; SELECT c2,right(c3,20),c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt WHERE c2%200 = 0; --echo # restart with keying let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --source include/restart_mysqld.inc SELECT c2,right(c3,20),c4,c5,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT c2,right(c3,20),c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt LIMIT 10; SELECT COUNT(*) FROM tde_db.t_encrypt; SELECT c2,right(c3,20),c4,c5,ST_AsText(c7) FROM tde_db.t_encrypt WHERE c2%200 = 0; SELECT c2,right(c3,20),c4,c5,c6,ST_AsText(c7) FROM tde_db.t_encrypt WHERE c2%200 = 0; DROP DATABASE tde_db; # Cleanup eval SET GLOBAL innodb_file_per_table=$innodb_file_per_table; #------------------------------------------------------------------------------ # InnoDB transparent encrypted tablespace, try run ""ALTER INSTANCE ..." # 1) with non priv user # 2) with priv user --disable_warnings DROP DATABASE IF EXISTS tde_db; CREATE DATABASE tde_db; USE tde_db; DROP TABLE IF EXISTS tde_db.t_encrypt; # --enable_warnings # let $innodb_file_per_table = `SELECT @@innodb_file_per_table`; SET GLOBAL innodb_file_per_table = 1; SELECT @@innodb_file_per_table; # # Create a table with encryption CREATE TABLE tde_db.t_encrypt(c1 INT, c2 char(20), c3 BLOB) ENCRYPTION="Y" ENGINE = InnoDB; SHOW CREATE TABLE tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt VALUES(0, "aaaaa",repeat('A', 20000)); INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; INSERT INTO tde_db.t_encrypt select * from tde_db.t_encrypt; SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt LIMIT 10; CREATE USER encryptprivuser@localhost IDENTIFIED BY 'auth'; GRANT ALL PRIVILEGES ON *.* to encryptprivuser@localhost; FLUSH PRIVILEGES; CREATE USER encryptnonprivuser@localhost IDENTIFIED BY 'noauth'; GRANT SELECT ON *.* to encryptnonprivuser@localhost; FLUSH PRIVILEGES; SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt LIMIT 10; --echo # In connection 1 connect (con1,localhost,encryptprivuser,'auth',); SELECT CURRENT_USER(); SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt LIMIT 10; ALTER INSTANCE ROTATE INNODB MASTER KEY; SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt LIMIT 10; disconnect con1; --echo # In connection 2 connect (con2,localhost,encryptnonprivuser,'noauth',); SELECT CURRENT_USER(); SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt LIMIT 10; --error 1227 ALTER INSTANCE ROTATE INNODB MASTER KEY; --error 1142 CREATE TABLE tde_db.t_encrypt_np(c1 INT, c2 char(20), c3 BLOB) ENCRYPTION="Y" ENGINE = InnoDB; SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt LIMIT 10; disconnect con2; --echo # In connection default connection default; # Restart to confirm the encryption info can be retrieved properly. --echo # Starting server with keyring plugin # restart with keying let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --source include/restart_mysqld.inc SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt LIMIT 10; DROP TABLE tde_db.t_encrypt; # ## Cleanup DROP USER encryptnonprivuser@localhost; DROP USER encryptprivuser@localhost; eval SET GLOBAL innodb_file_per_table=$innodb_file_per_table; #------------------------------------------------------------------------------ ## InnoDB transparent encrypted tablespace # - with PK-FK table # - view on encrypted table # - trigger on encrypted table # - fulltext index # - alter table on encrypted table --disable_warnings DROP DATABASE IF EXISTS tde_db; CREATE DATABASE tde_db; USE tde_db; DROP TABLE IF EXISTS tde_db.t_encrypt; # --enable_warnings # let $innodb_file_per_table = `SELECT @@innodb_file_per_table`; SET GLOBAL innodb_file_per_table = 1; SELECT @@innodb_file_per_table; # Create a table with encryption CREATE TABLE tde_db.t_encrypt(c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY, c2 char(100), c3 BLOB , FULLTEXT INDEX `idx1` (c2)) ENCRYPTION="Y" ENGINE = InnoDB; CREATE TABLE tde_db.t_encrypt1(c11 INT , c22 char(100), c33 BLOB , FULLTEXT INDEX `idx1` (c22)) ENCRYPTION="Y" ENGINE = InnoDB; SHOW CREATE TABLE tde_db.t_encrypt; CREATE TABLE tde_db.t_encrypt2 (f1 INT PRIMARY KEY, f2 CHAR(100), FOREIGN KEY (f1) REFERENCES tde_db.t_encrypt(c1) ON UPDATE CASCADE) ENCRYPTION="Y" ENGINE=InnoDB; DELIMITER |; CREATE TRIGGER tde_db.trigger_encrypt_table AFTER INSERT ON tde_db.t_encrypt FOR EACH ROW begin INSERT INTO tde_db.t_encrypt1 SET c11 = NEW.c1*-1, c22 = NEW.c2 , c33 = NEW.c3; end| DELIMITER ;| INSERT INTO tde_db.t_encrypt(c2,c3) VALUES("transparanet tablespace encryption",repeat('A', 200)); INSERT INTO tde_db.t_encrypt(c2,c3) VALUES("general tablespace option",repeat('A', 200)); INSERT INTO tde_db.t_encrypt(c2,c3) VALUES("page level encryption",repeat('A', 200)); INSERT INTO tde_db.t_encrypt2(f1,f2) VALUES(1,"transparanet tablespace encryption"); INSERT INTO tde_db.t_encrypt2(f1,f2) VALUES(2,"general tablespace option"); SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt LIMIT 10; # fulltext query SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt WHERE MATCH c2 AGAINST ('tablespace'); SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt WHERE MATCH c2 AGAINST ('tablespace' IN BOOLEAN MODE); SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt WHERE MATCH c2 AGAINST ('+tablespace -encryption' IN BOOLEAN MODE); ALTER TABLE tde_db.t_encrypt DROP INDEX idx1; SELECT c1,c2,right(c3, 20) FROM tde_db.t_encrypt LIMIT 10; ALTER TABLE tde_db.t_encrypt ADD COLUMN c4 CHAR(20) DEFAULT 'text'; SELECT c1,c2,right(c3, 20),c4 FROM tde_db.t_encrypt LIMIT 10; # check view CREATE VIEW tde_db.t_encrypt_view AS SELECT c1,c2 FROM tde_db.t_encrypt; SELECT c2 FROM tde_db.t_encrypt_view LIMIT 10; SELECT A.c2,B.c2,right(B.c3,20) FROM tde_db.t_encrypt_view A , tde_db.t_encrypt B WHERE A.c2 = B.c2; DROP VIEW tde_db.t_encrypt_view; # Check triggr table SELECT c11,c22,right(c33, 20) FROM tde_db.t_encrypt1 LIMIT 10; # check PK-FK , ON UPDATE CASECADE # Duplicate key --ERROR ER_DUP_ENTRY INSERT INTO tde_db.t_encrypt2(f1,f2) VALUES(2,"general tablespace option"); # No entry in PK --ERROR 1452 INSERT INTO tde_db.t_encrypt2(f1,f2) VALUES(8,"general tablespace option"); SELECT f1,f2 FROM tde_db.t_encrypt2; UPDATE tde_db.t_encrypt SET c1=10 WHERE c1=1; SELECT f1,f2 FROM tde_db.t_encrypt2; DROP DATABASE tde_db; # ## Cleanup eval SET GLOBAL innodb_file_per_table=$innodb_file_per_table; #------------------------------------------------------------------------------ # InnoDB transparent encrypted tablespace # - transation --disable_warnings DROP DATABASE IF EXISTS tde_db; CREATE DATABASE tde_db; USE tde_db; DROP TABLE IF EXISTS tde_db.t_encrypt; # --enable_warnings # let $innodb_file_per_table = `SELECT @@innodb_file_per_table`; SET GLOBAL innodb_file_per_table = 1; SELECT @@innodb_file_per_table; CREATE TABLE tde_db.t_encrypt (c2 INT NOT NULL AUTO_INCREMENT ,c3 VARCHAR(255), c4 JSON ,c5 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_a')) STORED,c6 INT GENERATED ALWAYS AS (JSON_EXTRACT(c4,'$.key_b')) VIRTUAL,c7 POINT NOT NULL,spatial INDEX idx2 (c7) , PRIMARY KEY (c2,c3(100))) ENCRYPTION="Y" ENGINE=InnoDB; DELIMITER |; CREATE PROCEDURE tde_db.txn_t_encrypt() BEGIN declare i int default 0; declare rowcnt int default 0; START TRANSACTION; WHILE (i <= 2000) DO SET i = i + 1; SET rowcnt = rowcnt + 1; INSERT INTO tde_db.t_encrypt(c3,c4,c7) VALUES (CONCAT(REPEAT('a',10),REPEAT(i,10)),'{ "key_a": 1, "key_b": 2, "key_c": 3 }',ST_GeomFromText('POINT(383293632 1754448)')); IF (rowcnt = 3) THEN UPDATE tde_db.t_encrypt SET c4 = '{ "key_a": 21, "key_b": 22, "key_c": 23 }' WHERE c2 = i-1 ; DELETE FROM tde_db.t_encrypt WHERE c2 = i; SAVEPOINT A; END IF; IF (rowcnt = 5) THEN UPDATE tde_db.t_encrypt SET c4 = '{ "key_a": 41, "key_b": 42, "key_c": 43 }' WHERE c2 = i-1 ; DELETE FROM tde_db.t_encrypt WHERE c2 = i; SAVEPOINT B; END IF; IF (rowcnt = 10) THEN ROLLBACK TO SAVEPOINT A; COMMIT; SET rowcnt = 0; START TRANSACTION; END IF; END WHILE; COMMIT; end| DELIMITER ;| call tde_db.txn_t_encrypt(); SELECT COUNT(*) FROM tde_db.t_encrypt; SELECT c2,RIGHT(c3,20),c4 FROM tde_db.t_encrypt LIMIT 10; SELECT c2,RIGHT(c3,20),c4 FROM tde_db.t_encrypt WHERE c2 > 500 AND c2 < 600; SELECT c2,RIGHT(c3,20),c4 FROM tde_db.t_encrypt ORDER BY c2 DESC LIMIT 10; --echo # Starting server with keyring plugin let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --source include/restart_mysqld.inc SELECT COUNT(*) FROM tde_db.t_encrypt; SELECT c2,RIGHT(c3,20),c4 FROM tde_db.t_encrypt LIMIT 10; SELECT c2,RIGHT(c3,20),c4 FROM tde_db.t_encrypt WHERE c2 > 500 AND c2 < 600; SELECT c2,RIGHT(c3,20),c4 FROM tde_db.t_encrypt ORDER BY c2 DESC LIMIT 10; DROP DATABASE tde_db; --echo # --echo # Bug#24404091 FAILING ASSERTION: !SRV_READ_ONLY_MODE || --echo # M_IMPL.M_LOG_MODE == MTR_LOG_NO_REDO --echo # let $restart_parameters = restart: --early-plugin-load="keyring_file=$KEYRING_PLUGIN" --loose-keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring $KEYRING_PLUGIN_OPT --innodb_read_only=1; --replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR $KEYRING_PLUGIN_OPT --plugin-dir=KEYRING_PLUGIN_PATH $KEYRING_PLUGIN keyring_file.so --replace_regex /.dll/.so/ --source include/restart_mysqld.inc --error ER_INNODB_READ_ONLY ALTER INSTANCE ROTATE INNODB MASTER KEY; # Normal restart --disable_query_log let $restart_parameters = restart:; --enable_query_log --source include/restart_mysqld.inc ## Cleanup eval SET GLOBAL innodb_file_per_table=$innodb_file_per_table; --remove_file $MYSQL_TMP_DIR/mysecret_keyring
Close