summaryrefslogtreecommitdiff
path: root/mysql-test/suite/innodb/r/innodb-system-table-view.result
blob: 7685cd121e24509057f159bfb82920dffc5e5023 (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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
SELECT table_id INTO @table_stats_id FROM information_schema.innodb_sys_tables
WHERE name = 'mysql/innodb_table_stats';
SELECT table_id INTO @index_stats_id FROM information_schema.innodb_sys_tables
WHERE name = 'mysql/innodb_index_stats';
SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES
WHERE table_id NOT IN (@table_stats_id, @index_stats_id) ORDER BY table_id;
TABLE_ID	NAME	FLAG	N_COLS	SPACE	ROW_FORMAT	ZIP_PAGE_SIZE	SPACE_TYPE
11	SYS_FOREIGN	0	7	0	Redundant	0	System
12	SYS_FOREIGN_COLS	0	7	0	Redundant	0	System
13	SYS_TABLESPACES	0	6	0	Redundant	0	System
14	SYS_DATAFILES	0	5	0	Redundant	0	System
15	SYS_VIRTUAL	0	6	0	Redundant	0	System
18	mysql/transaction_registry	33	8	3	Dynamic	0	Single
SELECT table_id,pos,mtype,prtype,len,name
FROM INFORMATION_SCHEMA.INNODB_SYS_COLUMNS
WHERE table_id NOT IN (@table_stats_id, @index_stats_id)
ORDER BY table_id, pos;
table_id	pos	mtype	prtype	len	name
11	0	1	524292	0	ID
11	1	1	524292	0	FOR_NAME
11	2	1	524292	0	REF_NAME
11	3	6	0	4	N_COLS
12	0	1	524292	0	ID
12	1	6	0	4	POS
12	2	1	524292	0	FOR_COL_NAME
12	3	1	524292	0	REF_COL_NAME
13	0	6	0	4	SPACE
13	1	1	524292	0	NAME
13	2	6	0	4	FLAGS
14	0	6	0	4	SPACE
14	1	1	524292	0	PATH
15	0	6	0	8	TABLE_ID
15	1	6	0	4	POS
15	2	6	0	4	BASE_POS
18	0	6	1800	8	transaction_id
18	1	6	1800	8	commit_id
18	2	3	526087	7	begin_timestamp
18	3	3	526087	7	commit_timestamp
18	4	6	1022	1	isolation_level
SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_INDEXES
WHERE table_id NOT IN (@table_stats_id, @index_stats_id) ORDER BY index_id;
INDEX_ID	NAME	TABLE_ID	TYPE	N_FIELDS	PAGE_NO	SPACE	MERGE_THRESHOLD
#	ID_IND	#	3	1	#	#	50
#	FOR_IND	#	0	1	#	#	50
#	REF_IND	#	0	1	#	#	50
#	ID_IND	#	3	2	#	#	50
#	SYS_TABLESPACES_SPACE	#	3	1	#	#	50
#	SYS_DATAFILES_SPACE	#	3	1	#	#	50
#	BASE_IDX	#	3	3	#	#	50
#	PRIMARY	#	3	1	#	#	50
#	commit_id	#	2	1	#	#	50
#	begin_timestamp	#	0	1	#	#	50
#	commit_timestamp	#	0	2	#	#	50
SELECT index_id,pos,name FROM INFORMATION_SCHEMA.INNODB_SYS_FIELDS
WHERE name NOT IN ('database_name', 'table_name', 'index_name', 'stat_name')
ORDER BY index_id, pos;
index_id	pos	name
11	0	ID
12	0	FOR_NAME
13	0	REF_NAME
14	0	ID
14	1	POS
15	0	SPACE
16	0	SPACE
17	0	TABLE_ID
17	1	POS
17	2	BASE_POS
20	0	transaction_id
21	0	commit_id
22	0	begin_timestamp
23	0	commit_timestamp
23	1	transaction_id
SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN;
ID	FOR_NAME	REF_NAME	N_COLS	TYPE
SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN_COLS;
ID	FOR_COL_NAME	REF_COL_NAME	POS
CREATE TABLE t_redundant (a INT KEY, b TEXT) ROW_FORMAT=REDUNDANT ENGINE=innodb;
CREATE TABLE t_compact (a INT KEY, b TEXT) ROW_FORMAT=COMPACT ENGINE=innodb;
CREATE TABLE t_compressed (a INT KEY, b TEXT) ROW_FORMAT=COMPRESSED ENGINE=innodb KEY_BLOCK_SIZE=2;
CREATE TABLE t_dynamic (a INT KEY, b TEXT) ROW_FORMAT=DYNAMIC ENGINE=innodb;
=== information_schema.innodb_sys_tables  and innodb_sys_tablespaces ===
Table Name	Tablespace	Table Flags	Columns	Row Format	Zip Size
test/t_compact	test/t_compact	1	5	Compact	0
test/t_compressed	test/t_compressed	37	5	Compressed	2048
test/t_dynamic	test/t_dynamic	33	5	Dynamic	0
test/t_redundant	test/t_redundant	0	5	Redundant	0
=== information_schema.innodb_sys_tablespaces and innodb_sys_datafiles ===
Space_Name	Page_Size	Zip_Size	Path
test/t_redundant	DEFAULT	DEFAULT	MYSQLD_DATADIR/test/t_redundant.ibd
test/t_compact	DEFAULT	DEFAULT	MYSQLD_DATADIR/test/t_compact.ibd
test/t_compressed	DEFAULT	2048	MYSQLD_DATADIR/test/t_compressed.ibd
test/t_dynamic	DEFAULT	DEFAULT	MYSQLD_DATADIR/test/t_dynamic.ibd
DROP TABLE t_redundant, t_compact, t_compressed, t_dynamic;
SELECT count(*) FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS;
count(*)
8
CREATE TABLE parent (id INT NOT NULL,
PRIMARY KEY (id)) ENGINE=INNODB;
CREATE TABLE child (id INT, parent_id INT,
INDEX par_ind (parent_id),
CONSTRAINT constraint_test
FOREIGN KEY (parent_id) REFERENCES parent(id)
ON DELETE CASCADE) ENGINE=INNODB;
SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN;
ID	FOR_NAME	REF_NAME	N_COLS	TYPE
test/constraint_test	test/child	test/parent	1	1
SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN_COLS;
ID	FOR_COL_NAME	REF_COL_NAME	POS
test/constraint_test	parent_id	id	0
INSERT INTO parent VALUES(1);
SELECT name, num_rows, ref_count
FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS
WHERE name LIKE "%parent";
name	num_rows	ref_count
test/parent	1	1
SELECT NAME, FLAG, N_COLS FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES
WHERE name NOT LIKE 'sys/%';
NAME	FLAG	N_COLS
SYS_DATAFILES	0	5
SYS_FOREIGN	0	7
SYS_FOREIGN_COLS	0	7
SYS_TABLESPACES	0	6
SYS_VIRTUAL	0	6
mysql/innodb_index_stats	33	11
mysql/innodb_table_stats	33	9
mysql/transaction_registry	33	8
test/child	33	5
test/parent	33	4
SELECT name, n_fields
from INFORMATION_SCHEMA.INNODB_SYS_INDEXES
WHERE table_id In (SELECT table_id from
INFORMATION_SCHEMA.INNODB_SYS_TABLES
WHERE name LIKE "%parent%");
name	n_fields
PRIMARY	1
SELECT name, n_fields
from INFORMATION_SCHEMA.INNODB_SYS_INDEXES
WHERE table_id In (SELECT table_id from
INFORMATION_SCHEMA.INNODB_SYS_TABLES
WHERE name LIKE "%child%");
name	n_fields
GEN_CLUST_INDEX	0
par_ind	1
SELECT name, pos, mtype, len
from INFORMATION_SCHEMA.INNODB_SYS_COLUMNS
WHERE table_id In (SELECT table_id from
INFORMATION_SCHEMA.INNODB_SYS_TABLES
WHERE name LIKE "%child%");
name	pos	mtype	len
id	0	6	4
parent_id	1	6	4
DROP TABLE child;
DROP TABLE parent;
CREATE TABLE parent (id INT NOT NULL, newid INT NOT NULL,
PRIMARY KEY (id, newid)) ENGINE=INNODB;
CREATE TABLE child (id INT, parent_id INT,
INDEX par_ind (parent_id),
CONSTRAINT constraint_test
FOREIGN KEY (id, parent_id) REFERENCES parent(id, newid)
ON DELETE CASCADE) ENGINE=INNODB;
SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN;
ID	FOR_NAME	REF_NAME	N_COLS	TYPE
test/constraint_test	test/child	test/parent	2	1
SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN_COLS;
ID	FOR_COL_NAME	REF_COL_NAME	POS
test/constraint_test	id	id	0
test/constraint_test	parent_id	newid	1
INSERT INTO parent VALUES(1, 9);
SELECT * FROM parent WHERE id IN (SELECT id FROM parent);
id	newid
1	9
SELECT name, num_rows, ref_count
FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS
WHERE name LIKE "%parent";
name	num_rows	ref_count
test/parent	1	2
DROP TABLE child;
DROP TABLE parent;