~ubuntu-branches/ubuntu/precise/mysql-5.1/precise

« back to all changes in this revision

Viewing changes to mysql-test/t/mysqldump.test

  • Committer: Bazaar Package Importer
  • Author(s): Norbert Tretkowski
  • Date: 2010-03-17 14:56:02 UTC
  • Revision ID: james.westby@ubuntu.com-20100317145602-x7e30l1b2sb5s6w6
Tags: upstream-5.1.45
Import upstream version 5.1.45

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# Embedded server doesn't support external clients
 
2
--source include/not_embedded.inc
 
3
 
 
4
# Binlog is required
 
5
--source include/have_log_bin.inc
 
6
 
 
7
# Save the initial number of concurrent sessions
 
8
--source include/count_sessions.inc
 
9
 
 
10
 
 
11
--echo # Bug#37938 Test "mysqldump" lacks various insert statements
 
12
--echo # Turn off concurrent inserts to avoid random errors
 
13
--echo # NOTE:  We reset the variable back to saved value at the end of test
 
14
SET @OLD_CONCURRENT_INSERT = @@GLOBAL.CONCURRENT_INSERT;
 
15
SET @@GLOBAL.CONCURRENT_INSERT = 0;
 
16
 
 
17
 
 
18
--disable_warnings
 
19
DROP TABLE IF EXISTS t1, `"t"1`, t1aa, t2, t2aa, t3;
 
20
drop database if exists mysqldump_test_db;
 
21
drop database if exists db1;
 
22
drop database if exists db2;
 
23
drop view if exists v1, v2, v3;
 
24
--enable_warnings
 
25
 
 
26
# XML output
 
27
 
 
28
CREATE TABLE t1(a INT, KEY (a)) KEY_BLOCK_SIZE=1024;
 
29
INSERT INTO t1 VALUES (1), (2);
 
30
--exec $MYSQL_DUMP --skip-create --skip-comments -X test t1
 
31
DROP TABLE t1;
 
32
 
 
33
--echo #
 
34
--echo # Bug#2005 Long decimal comparison bug.
 
35
--echo #
 
36
 
 
37
CREATE TABLE t1 (a decimal(64, 20));
 
38
INSERT INTO t1 VALUES ("1234567890123456789012345678901234567890"),
 
39
("0987654321098765432109876543210987654321");
 
40
--exec $MYSQL_DUMP --compact test t1
 
41
DROP TABLE t1;
 
42
 
 
43
--echo #
 
44
--echo # Bug#2055 mysqldump should replace "-inf" numeric field values with "NULL"
 
45
--echo #
 
46
 
 
47
CREATE TABLE t1 (a double);
 
48
INSERT INTO t1 VALUES ('-9e999999');
 
49
# The following replaces is here because some systems replaces the above
 
50
# double with '-inf' and others with MAX_DOUBLE
 
51
--replace_result (-1.79769313486232e+308) (RES) (NULL) (RES)
 
52
--exec $MYSQL_DUMP --compact test t1
 
53
DROP TABLE t1;
 
54
 
 
55
--echo #
 
56
--echo # Bug#3361 mysqldump quotes DECIMAL values inconsistently
 
57
--echo #
 
58
 
 
59
CREATE TABLE t1 (a DECIMAL(10,5), b FLOAT);
 
60
 
 
61
# check at first how mysql work with quoted decimal
 
62
 
 
63
INSERT INTO t1 VALUES (1.2345, 2.3456);
 
64
INSERT INTO t1 VALUES ('1.2345', 2.3456);
 
65
INSERT INTO t1 VALUES ("1.2345", 2.3456);
 
66
 
 
67
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ANSI_QUOTES';
 
68
INSERT INTO t1 VALUES (1.2345, 2.3456);
 
69
INSERT INTO t1 VALUES ('1.2345', 2.3456);
 
70
--error ER_BAD_FIELD_ERROR
 
71
INSERT INTO t1 VALUES ("1.2345", 2.3456);
 
72
SET SQL_MODE=@OLD_SQL_MODE;
 
73
 
 
74
# check how mysqldump make quoting
 
75
--exec $MYSQL_DUMP --compact test t1
 
76
--exec $MYSQL_DUMP --compact --skip-create test t1
 
77
--exec $MYSQL_DUMP --skip-create --skip-comments test t1
 
78
--exec $MYSQL_DUMP --skip-opt --extended-insert --skip-comments test t1
 
79
DROP TABLE t1;
 
80
 
 
81
CREATE TABLE t1(a int, b text, c varchar(3));
 
82
INSERT INTO t1 VALUES (1, "test", "tes"), (2, "TEST", "TES");
 
83
--exec $MYSQL_DUMP --skip-create --compact -X test t1
 
84
DROP TABLE t1;
 
85
 
 
86
--echo #
 
87
--echo # Bug#1707 mysqldump -X does't quote field and table names
 
88
--echo #
 
89
 
 
90
CREATE TABLE t1 (`a"b"` char(2));
 
91
INSERT INTO t1 VALUES ("1\""), ("\"2");
 
92
--exec $MYSQL_DUMP --compact --skip-create -X test t1
 
93
DROP TABLE t1;
 
94
 
 
95
--echo #
 
96
--echo # Bug#1994 mysqldump does not correctly dump UCS2 data
 
97
--echo # Bug#4261 mysqldump 10.7 (mysql 4.1.2) --skip-extended-insert drops NULL from inserts
 
98
--echo #
 
99
 
 
100
CREATE TABLE t1 (a  VARCHAR(255)) DEFAULT CHARSET koi8r;
 
101
INSERT INTO t1  VALUES (_koi8r x'C1C2C3C4C5'), (NULL);
 
102
--exec $MYSQL_DUMP --skip-comments --skip-extended-insert test t1
 
103
DROP TABLE t1;
 
104
 
 
105
--echo #
 
106
--echo # Bug#2634 mysqldump in --compatible=mysql4
 
107
--echo #
 
108
 
 
109
CREATE TABLE t1 (a int) ENGINE=MYISAM;
 
110
INSERT INTO t1 VALUES (1), (2);
 
111
--exec $MYSQL_DUMP --skip-comments --compatible=mysql40 test t1
 
112
--exec $MYSQL_DUMP --skip-comments --compatible=mysql323 test t1
 
113
DROP TABLE t1;
 
114
 
 
115
--echo #
 
116
--echo # Bug#2592 mysqldump doesn't quote "tricky" names correctly
 
117
--echo #
 
118
 
 
119
create table ```a` (i int);
 
120
--exec $MYSQL_DUMP --compact test
 
121
drop table ```a`;
 
122
 
 
123
--echo #
 
124
--echo # Bug#2591 mysqldump quotes names inconsistently
 
125
--echo #
 
126
 
 
127
create table t1(a int);
 
128
--exec $MYSQL_DUMP --comments=0 test
 
129
--exec $MYSQL_DUMP --comments=0 --compatible=ansi test
 
130
set global sql_mode='ANSI_QUOTES';
 
131
--exec $MYSQL_DUMP --comments=0 test
 
132
--exec $MYSQL_DUMP --comments=0 --compatible=ansi test
 
133
set global sql_mode='';
 
134
drop table t1;
 
135
 
 
136
--echo #
 
137
--echo # Bug#2705 mysqldump --tab extra output
 
138
--echo #
 
139
 
 
140
create table t1(a int);
 
141
insert into t1 values (1),(2),(3);
 
142
--exec $MYSQL_DUMP --skip-comments --tab=$MYSQLTEST_VARDIR/tmp/ test
 
143
--cat_file $MYSQLTEST_VARDIR/tmp/t1.sql
 
144
--cat_file $MYSQLTEST_VARDIR/tmp/t1.txt
 
145
--remove_file $MYSQLTEST_VARDIR/tmp/t1.sql
 
146
--remove_file $MYSQLTEST_VARDIR/tmp/t1.txt
 
147
--exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ test
 
148
--remove_file $MYSQLTEST_VARDIR/tmp/t1.sql
 
149
--remove_file $MYSQLTEST_VARDIR/tmp/t1.txt
 
150
drop table t1;
 
151
 
 
152
--echo #
 
153
--echo # Bug#6101 create database problem
 
154
--echo #
 
155
 
 
156
--exec $MYSQL_DUMP --skip-comments --databases test
 
157
 
 
158
create database mysqldump_test_db character set latin2 collate latin2_bin;
 
159
--exec $MYSQL_DUMP --skip-comments --databases mysqldump_test_db
 
160
drop database mysqldump_test_db;
 
161
 
 
162
--echo #
 
163
--echo # Bug#7020 mysqldump --compatible=mysql40 should set --skip-set-charset --default-char...
 
164
--echo # Check that we don't dump in UTF8 in compatible mode by default,
 
165
--echo # but use the default compiled values, or the values given in
 
166
--echo # --default-character-set=xxx. However, we should dump in UTF8
 
167
--echo # if it is explicitely set.
 
168
 
 
169
CREATE TABLE t1 (a  CHAR(10));
 
170
INSERT INTO t1  VALUES (_latin1 '����');
 
171
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments test t1
 
172
 
 
173
--echo #
 
174
--echo # Bug#8063 make test mysqldump [ fail ]
 
175
--echo # We cannot test this command because its output depends
 
176
--echo # on --default-character-set incompiled into "mysqldump" program.
 
177
--echo # If the future we can move this command into a separate test with
 
178
--echo # checking that "mysqldump" is compiled with "latin1"
 
179
--echo #
 
180
 
 
181
#--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --compatible=mysql323 test t1
 
182
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --compatible=mysql323 --default-character-set=cp850 test t1
 
183
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --default-character-set=cp850 --compatible=mysql323 test t1
 
184
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --default-character-set=utf8 --compatible=mysql323 test t1
 
185
DROP TABLE t1;
 
186
 
 
187
--echo #
 
188
--echo # WL#2319 Exclude Tables from dump
 
189
--echo #
 
190
 
 
191
CREATE TABLE t1 (a int);
 
192
CREATE TABLE t2 (a int);
 
193
INSERT INTO t1 VALUES (1),(2),(3);
 
194
INSERT INTO t2 VALUES (4),(5),(6);
 
195
--exec $MYSQL_DUMP --skip-comments --ignore-table=test.t1 test
 
196
DROP TABLE t1;
 
197
DROP TABLE t2;
 
198
 
 
199
--echo #
 
200
--echo # Bug#8830 mysqldump --skip-extended-insert causes --hex-blob to dump wrong values
 
201
--echo #
 
202
 
 
203
CREATE TABLE t1 (`b` blob);
 
204
INSERT INTO `t1` VALUES (0x602010000280100005E71A);
 
205
--exec $MYSQL_DUMP --skip-extended-insert --hex-blob test --skip-comments t1
 
206
DROP TABLE t1;
 
207
 
 
208
--echo #
 
209
--echo # Test for --insert-ignore
 
210
--echo #
 
211
 
 
212
CREATE TABLE t1 (a INT);
 
213
INSERT INTO t1 VALUES (1),(2),(3);
 
214
INSERT INTO t1 VALUES (4),(5),(6);
 
215
--exec $MYSQL_DUMP --skip-comments --insert-ignore test t1
 
216
--exec $MYSQL_DUMP --skip-comments --insert-ignore --delayed-insert test t1
 
217
DROP TABLE t1;
 
218
 
 
219
--echo #
 
220
--echo # Bug#10286 mysqldump -c crashes on table that has many fields with long
 
221
--echo #           names
 
222
--echo #
 
223
create table t1 (
 
224
 F_c4ca4238a0b923820dcc509a6f75849b int,
 
225
 F_c81e728d9d4c2f636f067f89cc14862c int,
 
226
 F_eccbc87e4b5ce2fe28308fd9f2a7baf3 int,
 
227
 F_a87ff679a2f3e71d9181a67b7542122c int,
 
228
 F_e4da3b7fbbce2345d7772b0674a318d5 int,
 
229
 F_1679091c5a880faf6fb5e6087eb1b2dc int,
 
230
 F_8f14e45fceea167a5a36dedd4bea2543 int,
 
231
 F_c9f0f895fb98ab9159f51fd0297e236d int,
 
232
 F_45c48cce2e2d7fbdea1afc51c7c6ad26 int,
 
233
 F_d3d9446802a44259755d38e6d163e820 int,
 
234
 F_6512bd43d9caa6e02c990b0a82652dca int,
 
235
 F_c20ad4d76fe97759aa27a0c99bff6710 int,
 
236
 F_c51ce410c124a10e0db5e4b97fc2af39 int,
 
237
 F_aab3238922bcc25a6f606eb525ffdc56 int,
 
238
 F_9bf31c7ff062936a96d3c8bd1f8f2ff3 int,
 
239
 F_c74d97b01eae257e44aa9d5bade97baf int,
 
240
 F_70efdf2ec9b086079795c442636b55fb int,
 
241
 F_6f4922f45568161a8cdf4ad2299f6d23 int,
 
242
 F_1f0e3dad99908345f7439f8ffabdffc4 int,
 
243
 F_98f13708210194c475687be6106a3b84 int,
 
244
 F_3c59dc048e8850243be8079a5c74d079 int,
 
245
 F_b6d767d2f8ed5d21a44b0e5886680cb9 int,
 
246
 F_37693cfc748049e45d87b8c7d8b9aacd int,
 
247
 F_1ff1de774005f8da13f42943881c655f int,
 
248
 F_8e296a067a37563370ded05f5a3bf3ec int,
 
249
 F_4e732ced3463d06de0ca9a15b6153677 int,
 
250
 F_02e74f10e0327ad868d138f2b4fdd6f0 int,
 
251
 F_33e75ff09dd601bbe69f351039152189 int,
 
252
 F_6ea9ab1baa0efb9e19094440c317e21b int,
 
253
 F_34173cb38f07f89ddbebc2ac9128303f int,
 
254
 F_c16a5320fa475530d9583c34fd356ef5 int,
 
255
 F_6364d3f0f495b6ab9dcf8d3b5c6e0b01 int,
 
256
 F_182be0c5cdcd5072bb1864cdee4d3d6e int,
 
257
 F_e369853df766fa44e1ed0ff613f563bd int,
 
258
 F_1c383cd30b7c298ab50293adfecb7b18 int,
 
259
 F_19ca14e7ea6328a42e0eb13d585e4c22 int,
 
260
 F_a5bfc9e07964f8dddeb95fc584cd965d int,
 
261
 F_a5771bce93e200c36f7cd9dfd0e5deaa int,
 
262
 F_d67d8ab4f4c10bf22aa353e27879133c int,
 
263
 F_d645920e395fedad7bbbed0eca3fe2e0 int,
 
264
 F_3416a75f4cea9109507cacd8e2f2aefc int,
 
265
 F_a1d0c6e83f027327d8461063f4ac58a6 int,
 
266
 F_17e62166fc8586dfa4d1bc0e1742c08b int,
 
267
 F_f7177163c833dff4b38fc8d2872f1ec6 int,
 
268
 F_6c8349cc7260ae62e3b1396831a8398f int,
 
269
 F_d9d4f495e875a2e075a1a4a6e1b9770f int,
 
270
 F_67c6a1e7ce56d3d6fa748ab6d9af3fd7 int,
 
271
 F_642e92efb79421734881b53e1e1b18b6 int,
 
272
 F_f457c545a9ded88f18ecee47145a72c0 int,
 
273
 F_c0c7c76d30bd3dcaefc96f40275bdc0a int,
 
274
 F_2838023a778dfaecdc212708f721b788 int,
 
275
 F_9a1158154dfa42caddbd0694a4e9bdc8 int,
 
276
 F_d82c8d1619ad8176d665453cfb2e55f0 int,
 
277
 F_a684eceee76fc522773286a895bc8436 int,
 
278
 F_b53b3a3d6ab90ce0268229151c9bde11 int,
 
279
 F_9f61408e3afb633e50cdf1b20de6f466 int,
 
280
 F_72b32a1f754ba1c09b3695e0cb6cde7f int,
 
281
 F_66f041e16a60928b05a7e228a89c3799 int,
 
282
 F_093f65e080a295f8076b1c5722a46aa2 int,
 
283
 F_072b030ba126b2f4b2374f342be9ed44 int,
 
284
 F_7f39f8317fbdb1988ef4c628eba02591 int,
 
285
 F_44f683a84163b3523afe57c2e008bc8c int,
 
286
 F_03afdbd66e7929b125f8597834fa83a4 int,
 
287
 F_ea5d2f1c4608232e07d3aa3d998e5135 int,
 
288
 F_fc490ca45c00b1249bbe3554a4fdf6fb int,
 
289
 F_3295c76acbf4caaed33c36b1b5fc2cb1 int,
 
290
 F_735b90b4568125ed6c3f678819b6e058 int,
 
291
 F_a3f390d88e4c41f2747bfa2f1b5f87db int,
 
292
 F_14bfa6bb14875e45bba028a21ed38046 int,
 
293
 F_7cbbc409ec990f19c78c75bd1e06f215 int,
 
294
 F_e2c420d928d4bf8ce0ff2ec19b371514 int,
 
295
 F_32bb90e8976aab5298d5da10fe66f21d int,
 
296
 F_d2ddea18f00665ce8623e36bd4e3c7c5 int,
 
297
 F_ad61ab143223efbc24c7d2583be69251 int,
 
298
 F_d09bf41544a3365a46c9077ebb5e35c3 int,
 
299
 F_fbd7939d674997cdb4692d34de8633c4 int,
 
300
 F_28dd2c7955ce926456240b2ff0100bde int,
 
301
 F_35f4a8d465e6e1edc05f3d8ab658c551 int,
 
302
 F_d1fe173d08e959397adf34b1d77e88d7 int,
 
303
 F_f033ab37c30201f73f142449d037028d int,
 
304
 F_43ec517d68b6edd3015b3edc9a11367b int,
 
305
 F_9778d5d219c5080b9a6a17bef029331c int,
 
306
 F_fe9fc289c3ff0af142b6d3bead98a923 int,
 
307
 F_68d30a9594728bc39aa24be94b319d21 int,
 
308
 F_3ef815416f775098fe977004015c6193 int,
 
309
 F_93db85ed909c13838ff95ccfa94cebd9 int,
 
310
 F_c7e1249ffc03eb9ded908c236bd1996d int,
 
311
 F_2a38a4a9316c49e5a833517c45d31070 int,
 
312
 F_7647966b7343c29048673252e490f736 int,
 
313
 F_8613985ec49eb8f757ae6439e879bb2a int,
 
314
 F_54229abfcfa5649e7003b83dd4755294 int,
 
315
 F_92cc227532d17e56e07902b254dfad10 int,
 
316
 F_98dce83da57b0395e163467c9dae521b int,
 
317
 F_f4b9ec30ad9f68f89b29639786cb62ef int,
 
318
 F_812b4ba287f5ee0bc9d43bbf5bbe87fb int,
 
319
 F_26657d5ff9020d2abefe558796b99584 int,
 
320
 F_e2ef524fbf3d9fe611d5a8e90fefdc9c int,
 
321
 F_ed3d2c21991e3bef5e069713af9fa6ca int,
 
322
 F_ac627ab1ccbdb62ec96e702f07f6425b int,
 
323
 F_f899139df5e1059396431415e770c6dd int,
 
324
 F_38b3eff8baf56627478ec76a704e9b52 int,
 
325
 F_ec8956637a99787bd197eacd77acce5e int,
 
326
 F_6974ce5ac660610b44d9b9fed0ff9548 int,
 
327
 F_c9e1074f5b3f9fc8ea15d152add07294 int,
 
328
 F_65b9eea6e1cc6bb9f0cd2a47751a186f int,
 
329
 F_f0935e4cd5920aa6c7c996a5ee53a70f int,
 
330
 F_a97da629b098b75c294dffdc3e463904 int,
 
331
 F_a3c65c2974270fd093ee8a9bf8ae7d0b int,
 
332
 F_2723d092b63885e0d7c260cc007e8b9d int,
 
333
 F_5f93f983524def3dca464469d2cf9f3e int,
 
334
 F_698d51a19d8a121ce581499d7b701668 int,
 
335
 F_7f6ffaa6bb0b408017b62254211691b5 int,
 
336
 F_73278a4a86960eeb576a8fd4c9ec6997 int,
 
337
 F_5fd0b37cd7dbbb00f97ba6ce92bf5add int,
 
338
 F_2b44928ae11fb9384c4cf38708677c48 int,
 
339
 F_c45147dee729311ef5b5c3003946c48f int,
 
340
 F_eb160de1de89d9058fcb0b968dbbbd68 int,
 
341
 F_5ef059938ba799aaa845e1c2e8a762bd int,
 
342
 F_07e1cd7dca89a1678042477183b7ac3f int,
 
343
 F_da4fb5c6e93e74d3df8527599fa62642 int,
 
344
 F_4c56ff4ce4aaf9573aa5dff913df997a int,
 
345
 F_a0a080f42e6f13b3a2df133f073095dd int,
 
346
 F_202cb962ac59075b964b07152d234b70 int,
 
347
 F_c8ffe9a587b126f152ed3d89a146b445 int,
 
348
 F_3def184ad8f4755ff269862ea77393dd int,
 
349
 F_069059b7ef840f0c74a814ec9237b6ec int,
 
350
 F_ec5decca5ed3d6b8079e2e7e7bacc9f2 int,
 
351
 F_76dc611d6ebaafc66cc0879c71b5db5c int,
 
352
 F_d1f491a404d6854880943e5c3cd9ca25 int,
 
353
 F_9b8619251a19057cff70779273e95aa6 int,
 
354
 F_1afa34a7f984eeabdbb0a7d494132ee5 int,
 
355
 F_65ded5353c5ee48d0b7d48c591b8f430 int,
 
356
 F_9fc3d7152ba9336a670e36d0ed79bc43 int,
 
357
 F_02522a2b2726fb0a03bb19f2d8d9524d int,
 
358
 F_7f1de29e6da19d22b51c68001e7e0e54 int,
 
359
 F_42a0e188f5033bc65bf8d78622277c4e int,
 
360
 F_3988c7f88ebcb58c6ce932b957b6f332 int,
 
361
 F_013d407166ec4fa56eb1e1f8cbe183b9 int,
 
362
 F_e00da03b685a0dd18fb6a08af0923de0 int,
 
363
 F_1385974ed5904a438616ff7bdb3f7439 int,
 
364
 F_0f28b5d49b3020afeecd95b4009adf4c int,
 
365
 F_a8baa56554f96369ab93e4f3bb068c22 int,
 
366
 F_903ce9225fca3e988c2af215d4e544d3 int,
 
367
 F_0a09c8844ba8f0936c20bd791130d6b6 int,
 
368
 F_2b24d495052a8ce66358eb576b8912c8 int,
 
369
 F_a5e00132373a7031000fd987a3c9f87b int,
 
370
 F_8d5e957f297893487bd98fa830fa6413 int,
 
371
 F_47d1e990583c9c67424d369f3414728e int,
 
372
 F_f2217062e9a397a1dca429e7d70bc6ca int,
 
373
 F_7ef605fc8dba5425d6965fbd4c8fbe1f int,
 
374
 F_a8f15eda80c50adb0e71943adc8015cf int,
 
375
 F_37a749d808e46495a8da1e5352d03cae int,
 
376
 F_b3e3e393c77e35a4a3f3cbd1e429b5dc int,
 
377
 F_1d7f7abc18fcb43975065399b0d1e48e int,
 
378
 F_2a79ea27c279e471f4d180b08d62b00a int,
 
379
 F_1c9ac0159c94d8d0cbedc973445af2da int,
 
380
 F_6c4b761a28b734fe93831e3fb400ce87 int,
 
381
 F_06409663226af2f3114485aa4e0a23b4 int,
 
382
 F_140f6969d5213fd0ece03148e62e461e int,
 
383
 F_b73ce398c39f506af761d2277d853a92 int,
 
384
 F_bd4c9ab730f5513206b999ec0d90d1fb int,
 
385
 F_82aa4b0af34c2313a562076992e50aa3 int,
 
386
 F_0777d5c17d4066b82ab86dff8a46af6f int,
 
387
 F_fa7cdfad1a5aaf8370ebeda47a1ff1c3 int,
 
388
 F_9766527f2b5d3e95d4a733fcfb77bd7e int,
 
389
 F_7e7757b1e12abcb736ab9a754ffb617a int,
 
390
 F_5878a7ab84fb43402106c575658472fa int,
 
391
 F_006f52e9102a8d3be2fe5614f42ba989 int,
 
392
 F_3636638817772e42b59d74cff571fbb3 int,
 
393
 F_149e9677a5989fd342ae44213df68868 int,
 
394
 F_a4a042cf4fd6bfb47701cbc8a1653ada int,
 
395
 F_1ff8a7b5dc7a7d1f0ed65aaa29c04b1e int,
 
396
 F_f7e6c85504ce6e82442c770f7c8606f0 int,
 
397
 F_bf8229696f7a3bb4700cfddef19fa23f int,
 
398
 F_82161242827b703e6acf9c726942a1e4 int,
 
399
 F_38af86134b65d0f10fe33d30dd76442e int,
 
400
 F_96da2f590cd7246bbde0051047b0d6f7 int,
 
401
 F_8f85517967795eeef66c225f7883bdcb int,
 
402
 F_8f53295a73878494e9bc8dd6c3c7104f int,
 
403
 F_045117b0e0a11a242b9765e79cbf113f int,
 
404
 F_fc221309746013ac554571fbd180e1c8 int,
 
405
 F_4c5bde74a8f110656874902f07378009 int,
 
406
 F_cedebb6e872f539bef8c3f919874e9d7 int,
 
407
 F_6cdd60ea0045eb7a6ec44c54d29ed402 int,
 
408
 F_eecca5b6365d9607ee5a9d336962c534 int,
 
409
 F_9872ed9fc22fc182d371c3e9ed316094 int,
 
410
 F_31fefc0e570cb3860f2a6d4b38c6490d int,
 
411
 F_9dcb88e0137649590b755372b040afad int,
 
412
 F_a2557a7b2e94197ff767970b67041697 int,
 
413
 F_cfecdb276f634854f3ef915e2e980c31 int,
 
414
 F_0aa1883c6411f7873cb83dacb17b0afc int,
 
415
 F_58a2fc6ed39fd083f55d4182bf88826d int,
 
416
 F_bd686fd640be98efaae0091fa301e613 int,
 
417
 F_a597e50502f5ff68e3e25b9114205d4a int,
 
418
 F_0336dcbab05b9d5ad24f4333c7658a0e int,
 
419
 F_084b6fbb10729ed4da8c3d3f5a3ae7c9 int,
 
420
 F_85d8ce590ad8981ca2c8286f79f59954 int,
 
421
 F_0e65972dce68dad4d52d063967f0a705 int,
 
422
 F_84d9ee44e457ddef7f2c4f25dc8fa865 int,
 
423
 F_3644a684f98ea8fe223c713b77189a77 int,
 
424
 F_757b505cfd34c64c85ca5b5690ee5293 int,
 
425
 F_854d6fae5ee42911677c739ee1734486 int,
 
426
 F_e2c0be24560d78c5e599c2a9c9d0bbd2 int,
 
427
 F_274ad4786c3abca69fa097b85867d9a4 int,
 
428
 F_eae27d77ca20db309e056e3d2dcd7d69 int,
 
429
 F_7eabe3a1649ffa2b3ff8c02ebfd5659f int,
 
430
 F_69adc1e107f7f7d035d7baf04342e1ca int,
 
431
 F_091d584fced301b442654dd8c23b3fc9 int,
 
432
 F_b1d10e7bafa4421218a51b1e1f1b0ba2 int,
 
433
 F_6f3ef77ac0e3619e98159e9b6febf557 int,
 
434
 F_eb163727917cbba1eea208541a643e74 int,
 
435
 F_1534b76d325a8f591b52d302e7181331 int,
 
436
 F_979d472a84804b9f647bc185a877a8b5 int,
 
437
 F_ca46c1b9512a7a8315fa3c5a946e8265 int,
 
438
 F_3b8a614226a953a8cd9526fca6fe9ba5 int,
 
439
 F_45fbc6d3e05ebd93369ce542e8f2322d int,
 
440
 F_63dc7ed1010d3c3b8269faf0ba7491d4 int,
 
441
 F_e96ed478dab8595a7dbda4cbcbee168f int,
 
442
 F_c0e190d8267e36708f955d7ab048990d int,
 
443
 F_ec8ce6abb3e952a85b8551ba726a1227 int,
 
444
 F_060ad92489947d410d897474079c1477 int,
 
445
 F_bcbe3365e6ac95ea2c0343a2395834dd int,
 
446
 F_115f89503138416a242f40fb7d7f338e int,
 
447
 F_13fe9d84310e77f13a6d184dbf1232f3 int,
 
448
 F_d1c38a09acc34845c6be3a127a5aacaf int,
 
449
 F_9cfdf10e8fc047a44b08ed031e1f0ed1 int,
 
450
 F_705f2172834666788607efbfca35afb3 int,
 
451
 F_74db120f0a8e5646ef5a30154e9f6deb int,
 
452
 F_57aeee35c98205091e18d1140e9f38cf int,
 
453
 F_6da9003b743b65f4c0ccd295cc484e57 int,
 
454
 F_9b04d152845ec0a378394003c96da594 int,
 
455
 F_be83ab3ecd0db773eb2dc1b0a17836a1 int,
 
456
 F_e165421110ba03099a1c0393373c5b43 int,
 
457
 F_289dff07669d7a23de0ef88d2f7129e7 int,
 
458
 F_577ef1154f3240ad5b9b413aa7346a1e int,
 
459
 F_01161aaa0b6d1345dd8fe4e481144d84 int,
 
460
 F_539fd53b59e3bb12d203f45a912eeaf2 int,
 
461
 F_ac1dd209cbcc5e5d1c6e28598e8cbbe8 int,
 
462
 F_555d6702c950ecb729a966504af0a635 int,
 
463
 F_335f5352088d7d9bf74191e006d8e24c int,
 
464
 F_f340f1b1f65b6df5b5e3f94d95b11daf int,
 
465
 F_e4a6222cdb5b34375400904f03d8e6a5 int,
 
466
 F_cb70ab375662576bd1ac5aaf16b3fca4 int,
 
467
 F_9188905e74c28e489b44e954ec0b9bca int,
 
468
 F_0266e33d3f546cb5436a10798e657d97 int,
 
469
 F_38db3aed920cf82ab059bfccbd02be6a int,
 
470
 F_3cec07e9ba5f5bb252d13f5f431e4bbb int,
 
471
 F_621bf66ddb7c962aa0d22ac97d69b793 int,
 
472
 F_077e29b11be80ab57e1a2ecabb7da330 int,
 
473
 F_6c9882bbac1c7093bd25041881277658 int,
 
474
 F_19f3cd308f1455b3fa09a282e0d496f4 int,
 
475
 F_03c6b06952c750899bb03d998e631860 int,
 
476
 F_c24cd76e1ce41366a4bbe8a49b02a028 int,
 
477
 F_c52f1bd66cc19d05628bd8bf27af3ad6 int,
 
478
 F_fe131d7f5a6b38b23cc967316c13dae2 int,
 
479
 F_f718499c1c8cef6730f9fd03c8125cab int,
 
480
 F_d96409bf894217686ba124d7356686c9 int,
 
481
 F_502e4a16930e414107ee22b6198c578f int,
 
482
 F_cfa0860e83a4c3a763a7e62d825349f7 int,
 
483
 F_a4f23670e1833f3fdb077ca70bbd5d66 int,
 
484
 F_b1a59b315fc9a3002ce38bbe070ec3f5 int,
 
485
 F_36660e59856b4de58a219bcf4e27eba3 int,
 
486
 F_8c19f571e251e61cb8dd3612f26d5ecf int,
 
487
 F_d6baf65e0b240ce177cf70da146c8dc8 int,
 
488
 F_e56954b4f6347e897f954495eab16a88 int,
 
489
 F_f7664060cc52bc6f3d620bcedc94a4b6 int,
 
490
 F_eda80a3d5b344bc40f3bc04f65b7a357 int,
 
491
 F_8f121ce07d74717e0b1f21d122e04521 int,
 
492
 F_06138bc5af6023646ede0e1f7c1eac75 int,
 
493
 F_39059724f73a9969845dfe4146c5660e int,
 
494
 F_7f100b7b36092fb9b06dfb4fac360931 int,
 
495
 F_7a614fd06c325499f1680b9896beedeb int,
 
496
 F_4734ba6f3de83d861c3176a6273cac6d int,
 
497
 F_d947bf06a885db0d477d707121934ff8 int,
 
498
 F_63923f49e5241343aa7acb6a06a751e7 int,
 
499
 F_db8e1af0cb3aca1ae2d0018624204529 int,
 
500
 F_20f07591c6fcb220ffe637cda29bb3f6 int,
 
501
 F_07cdfd23373b17c6b337251c22b7ea57 int,
 
502
 F_d395771085aab05244a4fb8fd91bf4ee int,
 
503
 F_92c8c96e4c37100777c7190b76d28233 int,
 
504
 F_e3796ae838835da0b6f6ea37bcf8bcb7 int,
 
505
 F_6a9aeddfc689c1d0e3b9ccc3ab651bc5 int,
 
506
 F_0f49c89d1e7298bb9930789c8ed59d48 int,
 
507
 F_46ba9f2a6976570b0353203ec4474217 int,
 
508
 F_0e01938fc48a2cfb5f2217fbfb00722d int,
 
509
 F_16a5cdae362b8d27a1d8f8c7b78b4330 int,
 
510
 F_918317b57931b6b7a7d29490fe5ec9f9 int,
 
511
 F_48aedb8880cab8c45637abc7493ecddd int,
 
512
 F_839ab46820b524afda05122893c2fe8e int,
 
513
 F_f90f2aca5c640289d0a29417bcb63a37 int,
 
514
 F_9c838d2e45b2ad1094d42f4ef36764f6 int,
 
515
 F_1700002963a49da13542e0726b7bb758 int,
 
516
 F_53c3bce66e43be4f209556518c2fcb54 int,
 
517
 F_6883966fd8f918a4aa29be29d2c386fb int,
 
518
 F_49182f81e6a13cf5eaa496d51fea6406 int,
 
519
 F_d296c101daa88a51f6ca8cfc1ac79b50 int,
 
520
 F_9fd81843ad7f202f26c1a174c7357585 int,
 
521
 F_26e359e83860db1d11b6acca57d8ea88 int,
 
522
 F_ef0d3930a7b6c95bd2b32ed45989c61f int,
 
523
 F_94f6d7e04a4d452035300f18b984988c int,
 
524
 F_34ed066df378efacc9b924ec161e7639 int,
 
525
 F_577bcc914f9e55d5e4e4f82f9f00e7d4 int,
 
526
 F_11b9842e0a271ff252c1903e7132cd68 int,
 
527
 F_37bc2f75bf1bcfe8450a1a41c200364c int,
 
528
 F_496e05e1aea0a9c4655800e8a7b9ea28 int,
 
529
 F_b2eb7349035754953b57a32e2841bda5 int,
 
530
 F_8e98d81f8217304975ccb23337bb5761 int,
 
531
 F_a8c88a0055f636e4a163a5e3d16adab7 int,
 
532
 F_eddea82ad2755b24c4e168c5fc2ebd40 int,
 
533
 F_06eb61b839a0cefee4967c67ccb099dc int,
 
534
 F_9dfcd5e558dfa04aaf37f137a1d9d3e5 int,
 
535
 F_950a4152c2b4aa3ad78bdd6b366cc179 int,
 
536
 F_158f3069a435b314a80bdcb024f8e422 int,
 
537
 F_758874998f5bd0c393da094e1967a72b int,
 
538
 F_ad13a2a07ca4b7642959dc0c4c740ab6 int,
 
539
 F_3fe94a002317b5f9259f82690aeea4cd int,
 
540
 F_5b8add2a5d98b1a652ea7fd72d942dac int,
 
541
 F_432aca3a1e345e339f35a30c8f65edce int,
 
542
 F_8d3bba7425e7c98c50f52ca1b52d3735 int,
 
543
 F_320722549d1751cf3f247855f937b982 int,
 
544
 F_caf1a3dfb505ffed0d024130f58c5cfa int,
 
545
 F_5737c6ec2e0716f3d8a7a5c4e0de0d9a int,
 
546
 F_bc6dc48b743dc5d013b1abaebd2faed2 int,
 
547
 F_f2fc990265c712c49d51a18a32b39f0c int,
 
548
 F_89f0fd5c927d466d6ec9a21b9ac34ffa int,
 
549
 F_a666587afda6e89aec274a3657558a27 int,
 
550
 F_b83aac23b9528732c23cc7352950e880 int,
 
551
 F_cd00692c3bfe59267d5ecfac5310286c int,
 
552
 F_6faa8040da20ef399b63a72d0e4ab575 int,
 
553
 F_fe73f687e5bc5280214e0486b273a5f9 int);
 
554
insert into t1 (F_8d3bba7425e7c98c50f52ca1b52d3735) values (1);
 
555
--exec $MYSQL_DUMP --skip-comments -c test
 
556
drop table t1;
 
557
 
 
558
--echo #
 
559
--echo # Test for --add-drop-database
 
560
--echo #
 
561
 
 
562
CREATE TABLE t1 (a int);
 
563
INSERT INTO t1 VALUES (1),(2),(3);
 
564
--exec $MYSQL_DUMP --add-drop-database --skip-comments --databases test
 
565
DROP TABLE t1;
 
566
 
 
567
--echo #
 
568
--echo # Bug#9558 mysqldump --no-data db t1 t2 format still dumps data
 
569
--echo #
 
570
 
 
571
CREATE DATABASE mysqldump_test_db;
 
572
USE mysqldump_test_db;
 
573
CREATE TABLE t1 ( a INT );
 
574
CREATE TABLE t2 ( a INT );
 
575
INSERT INTO t1 VALUES (1), (2);
 
576
INSERT INTO t2 VALUES (1), (2);
 
577
--exec $MYSQL_DUMP --skip-comments --no-data mysqldump_test_db
 
578
--exec $MYSQL_DUMP --skip-comments --no-data mysqldump_test_db t1 t2
 
579
--exec $MYSQL_DUMP --skip-comments --skip-create --xml --no-data mysqldump_test_db
 
580
--exec $MYSQL_DUMP --skip-comments --skip-create --xml --no-data mysqldump_test_db t1 t2
 
581
DROP TABLE t1, t2;
 
582
DROP DATABASE mysqldump_test_db;
 
583
 
 
584
--echo #
 
585
--echo #  Testing with tables and databases that don't exists
 
586
--echo #  or contains illegal characters
 
587
--echo # (Bug#9358 mysqldump crashes if tablename starts with \)
 
588
--echo #
 
589
create database mysqldump_test_db;
 
590
use mysqldump_test_db;
 
591
create table t1(a varchar(30) primary key, b int not null);
 
592
create table t2(a varchar(30) primary key, b int not null);
 
593
create table t3(a varchar(30) primary key, b int not null);
 
594
 
 
595
--disable_query_log
 
596
select '------ Testing with illegal table names ------' as test_sequence ;
 
597
--enable_query_log
 
598
--error 6
 
599
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_db "\d-2-1.sql" 2>&1
 
600
 
 
601
--error 6
 
602
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_db  "\t1" 2>&1
 
603
 
 
604
--error 6
 
605
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_db  "\\t1" 2>&1
 
606
 
 
607
--error 6
 
608
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_db  "\\\\t1" 2>&1
 
609
 
 
610
--error 6
 
611
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_db  "t\1" 2>&1
 
612
 
 
613
--error 6
 
614
--exec $MYSQL_DUMP --compact --skip-comments  mysqldump_test_db  "t\\1" 2>&1
 
615
 
 
616
--error 6
 
617
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_db  "t/1" 2>&1
 
618
 
 
619
--error 6
 
620
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_db "T_1" 2>&1
 
621
 
 
622
--error 6
 
623
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_db "T%1" 2>&1
 
624
 
 
625
--error 6
 
626
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_db "T'1" 2>&1
 
627
 
 
628
--error 6
 
629
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_db "T_1" 2>&1
 
630
 
 
631
--error 6
 
632
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_db "T_" 2>&1
 
633
 
 
634
--disable_query_log
 
635
select '------ Testing with illegal database names ------' as test_sequence ;
 
636
--enable_query_log
 
637
--error 2
 
638
--exec $MYSQL_DUMP --compact --skip-comments mysqldump_test_d 2>&1
 
639
 
 
640
--error 2
 
641
--exec $MYSQL_DUMP --compact --skip-comments "mysqld\ump_test_db" 2>&1
 
642
 
 
643
drop table t1, t2, t3;
 
644
drop database mysqldump_test_db;
 
645
use test;
 
646
 
 
647
 
 
648
--echo #
 
649
--echo # Bug#9657 mysqldump xml ( -x ) does not format NULL fields correctly
 
650
--echo #
 
651
 
 
652
create table t1 (a int(10));
 
653
create table t2 (pk int primary key auto_increment,
 
654
a int(10), b varchar(30), c datetime, d blob, e text);
 
655
insert into t1 values (NULL), (10), (20);
 
656
insert into t2 (a, b) values (NULL, NULL),(10, NULL),(NULL, "twenty"),(30, "thirty");
 
657
--exec $MYSQL_DUMP  --skip-comments --xml --no-create-info test
 
658
drop table t1, t2;
 
659
 
 
660
 
 
661
--echo #
 
662
--echo # Bug#12123 mysqldump --tab results in text file which can't be imported
 
663
--echo #
 
664
 
 
665
create table t1 (a text character set utf8, b text character set latin1);
 
666
insert t1 values (0x4F736E616272C3BC636B, 0x4BF66C6E);
 
667
select * from t1;
 
668
--exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ test
 
669
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/t1.sql
 
670
--exec $MYSQL_IMPORT test $MYSQLTEST_VARDIR/tmp/t1.txt
 
671
select * from t1;
 
672
 
 
673
drop table t1;
 
674
 
 
675
 
 
676
--echo #
 
677
--echo # Bug#15328 Segmentation fault occured if my.cnf is invalid for escape sequence
 
678
--echo #
 
679
 
 
680
--exec $MYSQL_MY_PRINT_DEFAULTS --config-file=$MYSQL_TEST_DIR/std_data/bug15328.cnf mysqldump
 
681
 
 
682
--echo #
 
683
--echo # Bug#19025 mysqldump doesn't correctly dump "auto_increment = [int]"
 
684
--echo #
 
685
 
 
686
create table `t1` (
 
687
    t1_name varchar(255) default null,
 
688
    t1_id int(10) unsigned not null auto_increment,
 
689
    key (t1_name),
 
690
    primary key (t1_id)
 
691
) auto_increment = 1000 default charset=latin1;
 
692
 
 
693
insert into t1 (t1_name) values('bla');
 
694
insert into t1 (t1_name) values('bla');
 
695
insert into t1 (t1_name) values('bla');
 
696
 
 
697
select * from t1;
 
698
 
 
699
show create table `t1`;
 
700
 
 
701
--exec $MYSQL_DUMP --skip-comments test t1 > $MYSQLTEST_VARDIR/tmp/bug19025.sql
 
702
DROP TABLE `t1`;
 
703
 
 
704
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/bug19025.sql
 
705
 
 
706
select * from t1;
 
707
 
 
708
show create table `t1`;
 
709
 
 
710
drop table `t1`;
 
711
--remove_file $MYSQLTEST_VARDIR/tmp/bug19025.sql
 
712
 
 
713
 
 
714
--echo #
 
715
--echo # Bug#18536 wrong table order
 
716
--echo #
 
717
 
 
718
create table t1(a int);
 
719
create table t2(a int);
 
720
create table t3(a int);
 
721
--error 6
 
722
--exec $MYSQL_DUMP --skip-comments --force --no-data test t3 t1 non_existing t2
 
723
drop table t1, t2, t3;
 
724
 
 
725
 
 
726
--echo #
 
727
--echo # Bug#21288 mysqldump segmentation fault when using --where
 
728
--echo #
 
729
 
 
730
create table t1 (a int);
 
731
--error 2
 
732
--exec $MYSQL_DUMP --skip-comments --force test t1 --where="xx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 2>&1
 
733
drop table t1;
 
734
 
 
735
 
 
736
--echo #
 
737
--echo # Bug#13926 --order-by-primary fails if PKEY contains quote character
 
738
--echo #
 
739
 
 
740
--disable_warnings
 
741
DROP TABLE IF EXISTS `t1`;
 
742
CREATE TABLE `t1` (
 
743
  `a b` INT,
 
744
  `c"d` INT,
 
745
  `e``f` INT,
 
746
  PRIMARY KEY (`a b`, `c"d`, `e``f`)
 
747
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
 
748
insert into t1 values (0815, 4711, 2006);
 
749
 
 
750
--exec $MYSQL_DUMP --skip-comments --compatible=ansi --order-by-primary test t1
 
751
--exec $MYSQL_DUMP --skip-comments --order-by-primary test t1
 
752
DROP TABLE `t1`;
 
753
--enable_warnings
 
754
 
 
755
--echo End of 4.1 tests
 
756
 
 
757
 
 
758
--echo #
 
759
--echo # Bug#10213 mysqldump crashes when dumping VIEWs(on MacOS X)
 
760
--echo #
 
761
 
 
762
create database db1;
 
763
use db1;
 
764
 
 
765
CREATE TABLE t2 (
 
766
  a varchar(30) default NULL,
 
767
  KEY a (a(5))
 
768
);
 
769
 
 
770
INSERT INTO t2 VALUES ('alfred');
 
771
INSERT INTO t2 VALUES ('angie');
 
772
INSERT INTO t2 VALUES ('bingo');
 
773
INSERT INTO t2 VALUES ('waffle');
 
774
INSERT INTO t2 VALUES ('lemon');
 
775
create view v2 as select * from t2 where a like 'a%' with check option;
 
776
--exec $MYSQL_DUMP  --skip-comments db1
 
777
drop table t2;
 
778
drop view v2;
 
779
drop database db1;
 
780
use test;
 
781
 
 
782
 
 
783
--echo #
 
784
--echo # Bug#10713 mysqldump includes database in create view and referenced tables
 
785
--echo #
 
786
 
 
787
# create table and views in db2
 
788
create database db2;
 
789
use db2;
 
790
create table t1 (a int);
 
791
create table t2 (a int, b varchar(10), primary key(a));
 
792
insert into t2 values (1, "on"), (2, "off"), (10, "pol"), (12, "meg");
 
793
insert into t1 values (289), (298), (234), (456), (789);
 
794
create view v1 as select * from t2;
 
795
create view v2 as select * from t1;
 
796
 
 
797
# dump tables and view from db2
 
798
--exec $MYSQL_DUMP db2 > $MYSQLTEST_VARDIR/tmp/bug10713.sql
 
799
 
 
800
# drop the db, tables and views
 
801
drop table t1, t2;
 
802
drop view v1, v2;
 
803
drop database db2;
 
804
use test;
 
805
 
 
806
# create db1 and reload dump
 
807
create database db1;
 
808
use db1;
 
809
--exec $MYSQL db1 < $MYSQLTEST_VARDIR/tmp/bug10713.sql
 
810
 
 
811
# check that all tables and views could be created
 
812
show tables;
 
813
select * from t2 order by a;
 
814
 
 
815
drop table t1, t2;
 
816
drop database db1;
 
817
use test;
 
818
--remove_file $MYSQLTEST_VARDIR/tmp/bug10713.sql
 
819
 
 
820
#
 
821
# dump of view
 
822
#
 
823
 
 
824
create table t1(a int);
 
825
create view v1 as select * from t1;
 
826
--exec $MYSQL_DUMP --skip-comments test
 
827
drop view v1;
 
828
drop table t1;
 
829
 
 
830
 
 
831
--echo #
 
832
--echo # Bug#10213 mysqldump crashes when dumping VIEWs(on MacOS X)
 
833
--echo #
 
834
 
 
835
create database mysqldump_test_db;
 
836
use mysqldump_test_db;
 
837
 
 
838
CREATE TABLE t2 (
 
839
  a varchar(30) default NULL,
 
840
  KEY a (a(5))
 
841
);
 
842
 
 
843
INSERT INTO t2 VALUES ('alfred');
 
844
INSERT INTO t2 VALUES ('angie');
 
845
INSERT INTO t2 VALUES ('bingo');
 
846
INSERT INTO t2 VALUES ('waffle');
 
847
INSERT INTO t2 VALUES ('lemon');
 
848
create view v2 as select * from t2 where a like 'a%' with check option;
 
849
--exec $MYSQL_DUMP  --skip-comments mysqldump_test_db
 
850
drop table t2;
 
851
drop view v2;
 
852
drop database mysqldump_test_db;
 
853
use test;
 
854
 
 
855
--echo #
 
856
--echo # Bug#9756 mysql client failing on dumps containing certain \ sequences
 
857
--echo #
 
858
 
 
859
CREATE TABLE t1 (a char(10));
 
860
INSERT INTO t1 VALUES ('\'');
 
861
--exec $MYSQL_DUMP --skip-comments test t1
 
862
DROP TABLE t1;
 
863
 
 
864
--echo #
 
865
--echo # Bug#10927 mysqldump: Can't reload dump with view that consist of other view
 
866
--echo #
 
867
 
 
868
create table t1(a int, b int, c varchar(30));
 
869
 
 
870
insert into t1 values(1, 2, "one"), (2, 4, "two"), (3, 6, "three");
 
871
 
 
872
create view v3 as
 
873
select * from t1;
 
874
 
 
875
create  view v1 as
 
876
select * from v3 where b in (1, 2, 3, 4, 5, 6, 7);
 
877
 
 
878
create  view v2 as
 
879
select v3.a from v3, v1 where v1.a=v3.a and v3.b=3 limit 1;
 
880
 
 
881
--exec $MYSQL_DUMP --skip-comments test
 
882
 
 
883
drop view v1, v2, v3;
 
884
drop table t1;
 
885
 
 
886
--echo #
 
887
--echo # Test for dumping triggers
 
888
--echo #
 
889
 
 
890
CREATE TABLE t1 (a int, b bigint default NULL);
 
891
CREATE TABLE t2 (a int);
 
892
delimiter |;
 
893
create trigger trg1 before insert on t1 for each row
 
894
begin
 
895
  if new.a > 10 then
 
896
    set new.a := 10;
 
897
    set new.a := 11;
 
898
  end if;
 
899
end|
 
900
create trigger trg2 before update on t1 for each row begin
 
901
  if old.a % 2 = 0 then set new.b := 12; end if;
 
902
end|
 
903
set sql_mode="traditional"|
 
904
create trigger trg3 after update on t1 for each row
 
905
begin
 
906
  if new.a = -1 then
 
907
    set @fired:= "Yes";
 
908
  end if;
 
909
end|
 
910
create trigger trg4 before insert on t2 for each row
 
911
begin
 
912
  if new.a > 10 then
 
913
    set @fired:= "No";
 
914
  end if;
 
915
end|
 
916
set sql_mode=default|
 
917
delimiter ;|
 
918
--replace_column 6 '0000-00-00 00:00:00'
 
919
show triggers like "t1";
 
920
INSERT INTO t1 (a) VALUES (1),(2),(3),(22);
 
921
update t1 set a = 4 where a=3;
 
922
# Triggers should be dumped by default
 
923
--exec $MYSQL_DUMP --skip-comments --databases test
 
924
# Skip dumping triggers
 
925
--exec $MYSQL_DUMP --skip-comments --databases --skip-triggers test
 
926
# Dump and reload...
 
927
--exec $MYSQL_DUMP --skip-comments --databases test > $MYSQLTEST_VARDIR/tmp/mysqldump.sql
 
928
drop table t1;
 
929
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/mysqldump.sql
 
930
# Check that tables have been reloaded
 
931
show tables;
 
932
--replace_column 6 #
 
933
show triggers;
 
934
DROP TABLE t1, t2;
 
935
 
 
936
--echo #
 
937
--echo # Bug#9136  my_print_defaults changed behaviour between 4.1.7 and 4.1.10a
 
938
--echo # Bug#12917 The --defaults-extra-file option is ignored by the 5.0 client binaries
 
939
--echo # (Problems with --defaults-extra-file option)
 
940
--echo #
 
941
 
 
942
--write_file $MYSQLTEST_VARDIR/tmp/tmp.cnf
 
943
[mysqltest1]
 
944
port=1234
 
945
EOF
 
946
--exec $MYSQL_MY_PRINT_DEFAULTS -c $MYSQLTEST_VARDIR/tmp/tmp.cnf mysqltest1
 
947
--exec $MYSQL_MY_PRINT_DEFAULTS -e $MYSQLTEST_VARDIR/tmp/tmp.cnf mysqltest1 mysqltest1
 
948
--remove_file $MYSQLTEST_VARDIR/tmp/tmp.cnf
 
949
 
 
950
--echo #
 
951
--echo # Test of fix to Bug#12597 mysqldump dumps triggers wrongly
 
952
--echo #
 
953
 
 
954
DROP TABLE IF EXISTS `test1`;
 
955
CREATE TABLE `test1` (
 
956
  `a1` int(11) default NULL
 
957
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
 
958
 
 
959
DROP TABLE IF EXISTS `test2`;
 
960
CREATE TABLE `test2` (
 
961
  `a2` int(11) default NULL
 
962
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
 
963
 
 
964
DELIMITER //;
 
965
CREATE TRIGGER `testref` BEFORE INSERT ON `test1` FOR EACH ROW BEGIN
 
966
INSERT INTO test2 SET a2 = NEW.a1; END  //
 
967
DELIMITER ;//
 
968
 
 
969
INSERT INTO `test1` VALUES (1);
 
970
SELECT * FROM `test2`;
 
971
 
 
972
# dump
 
973
--exec $MYSQL_DUMP --skip-comments --databases test > $MYSQLTEST_VARDIR/tmp/mysqldump.sql
 
974
 
 
975
#DROP TRIGGER testref;
 
976
#DROP TABLE test1;
 
977
#DROP TABLE test2;
 
978
# restore
 
979
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/mysqldump.sql
 
980
SHOW TRIGGERS;
 
981
SELECT * FROM `test1`;
 
982
SELECT * FROM `test2`;
 
983
 
 
984
DROP TRIGGER testref;
 
985
DROP TABLE test1;
 
986
DROP TABLE test2;
 
987
--remove_file $MYSQLTEST_VARDIR/tmp/mysqldump.sql
 
988
 
 
989
 
 
990
--echo #
 
991
--echo # Bug#9056 mysqldump does not dump routines
 
992
--echo #
 
993
 
 
994
--disable_warnings
 
995
DROP TABLE IF EXISTS t1;
 
996
DROP FUNCTION IF EXISTS bug9056_func1;
 
997
DROP FUNCTION IF EXISTS bug9056_func2;
 
998
DROP PROCEDURE IF EXISTS bug9056_proc1;
 
999
DROP PROCEDURE IF EXISTS bug9056_proc2;
 
1000
DROP PROCEDURE IF EXISTS `a'b`;
 
1001
--enable_warnings
 
1002
 
 
1003
CREATE TABLE t1 (id int);
 
1004
INSERT INTO t1 VALUES(1), (2), (3), (4), (5);
 
1005
 
 
1006
DELIMITER //;
 
1007
CREATE FUNCTION `bug9056_func1`(a INT, b INT) RETURNS int(11) RETURN a+b //
 
1008
CREATE PROCEDURE `bug9056_proc1`(IN a INT, IN b INT, OUT c INT)
 
1009
BEGIN SELECT a+b INTO c; end  //
 
1010
 
 
1011
create function bug9056_func2(f1 char binary) returns char
 
1012
begin
 
1013
  set f1= concat( 'hello', f1 );
 
1014
  return f1;
 
1015
end //
 
1016
 
 
1017
CREATE PROCEDURE bug9056_proc2(OUT a INT)
 
1018
BEGIN
 
1019
  select sum(id) from t1 into a;
 
1020
END //
 
1021
 
 
1022
DELIMITER ;//
 
1023
 
 
1024
set sql_mode='ansi';
 
1025
create procedure `a'b` () select 1; # to fix syntax highlighting :')
 
1026
set sql_mode='';
 
1027
 
 
1028
# Dump the DB and ROUTINES
 
1029
--exec $MYSQL_DUMP --skip-comments --routines --databases test
 
1030
 
 
1031
# ok, now blow it all away
 
1032
DROP FUNCTION bug9056_func1;
 
1033
DROP FUNCTION bug9056_func2;
 
1034
DROP PROCEDURE bug9056_proc1;
 
1035
DROP PROCEDURE bug9056_proc2;
 
1036
DROP PROCEDURE `a'b`;
 
1037
drop table t1;
 
1038
 
 
1039
 
 
1040
--echo #
 
1041
--echo # Bug#13052 mysqldump timestamp reloads broken
 
1042
--echo #
 
1043
 
 
1044
--disable_warnings
 
1045
drop table if exists t1;
 
1046
--enable_warnings
 
1047
 
 
1048
create table t1 (`d` timestamp, unique (`d`));
 
1049
set time_zone='+00:00';
 
1050
insert into t1 values ('2003-10-25 22:00:00'),('2003-10-25 23:00:00');
 
1051
# results should show two different time values
 
1052
select * from t1;
 
1053
set time_zone='Europe/Moscow';
 
1054
# results should show two same time values, despite unique
 
1055
select * from t1;
 
1056
set global time_zone='Europe/Moscow';
 
1057
--exec $MYSQL_DUMP --skip-comments --databases test
 
1058
--exec $MYSQL_DUMP --skip-tz-utc --skip-comments --databases test
 
1059
drop table t1;
 
1060
set global time_zone=default;
 
1061
set time_zone=default;
 
1062
 
 
1063
--echo #
 
1064
--echo # Test of fix to Bug#13146 ansi quotes break loading of triggers
 
1065
--echo #
 
1066
 
 
1067
--disable_warnings
 
1068
DROP TABLE IF EXISTS `t1 test`;
 
1069
DROP TABLE IF EXISTS `t2 test`;
 
1070
--enable_warnings
 
1071
 
 
1072
CREATE TABLE `t1 test` (
 
1073
  `a1` int(11) default NULL
 
1074
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
 
1075
 
 
1076
CREATE TABLE `t2 test` (
 
1077
  `a2` int(11) default NULL
 
1078
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
 
1079
 
 
1080
DELIMITER //;
 
1081
CREATE TRIGGER `test trig` BEFORE INSERT ON `t1 test` FOR EACH ROW BEGIN
 
1082
INSERT INTO `t2 test` SET a2 = NEW.a1; END  //
 
1083
DELIMITER ;//
 
1084
 
 
1085
INSERT INTO `t1 test` VALUES (1);
 
1086
INSERT INTO `t1 test` VALUES (2);
 
1087
INSERT INTO `t1 test` VALUES (3);
 
1088
SELECT * FROM `t2 test`;
 
1089
# dump with compatible=ansi. Everything except triggers should be double
 
1090
# quoted
 
1091
--exec $MYSQL_DUMP --skip-comments --compatible=ansi --triggers test
 
1092
 
 
1093
DROP TRIGGER `test trig`;
 
1094
DROP TABLE `t1 test`;
 
1095
DROP TABLE `t2 test`;
 
1096
 
 
1097
--echo #
 
1098
--echo # Bug#12838 mysqldump -x with views exits with error
 
1099
--echo #
 
1100
 
 
1101
--disable_warnings
 
1102
drop table if exists t1;
 
1103
--enable_warnings
 
1104
create table t1 (a int, b varchar(32), c varchar(32));
 
1105
insert into t1 values (1, 'first value', 'xxxx');
 
1106
insert into t1 values (2, 'second value', 'tttt');
 
1107
insert into t1 values (3, 'third value', 'vvv vvv');
 
1108
 
 
1109
create view v1 as select * from t1;
 
1110
create view v0 as select * from v1;
 
1111
create view v2 as select * from v0;
 
1112
 
 
1113
select * from v2;
 
1114
--exec $MYSQL_DUMP -x --skip-comments --databases test
 
1115
 
 
1116
drop view v2;
 
1117
drop view v0;
 
1118
drop view v1;
 
1119
drop table t1;
 
1120
 
 
1121
--echo #
 
1122
--echo # Bug#14554 mysqldump does not separate words "ROW" and "BEGIN"
 
1123
--echo # for tables with trigger created in the IGNORE_SPACE sql mode.
 
1124
--echo #
 
1125
 
 
1126
SET @old_sql_mode = @@SQL_MODE;
 
1127
SET SQL_MODE = IGNORE_SPACE;
 
1128
 
 
1129
CREATE TABLE t1 (a INT);
 
1130
DELIMITER |;
 
1131
CREATE TRIGGER tr1 BEFORE INSERT ON t1
 
1132
       FOR EACH ROW
 
1133
       BEGIN
 
1134
         SET new.a = 0;
 
1135
       END|
 
1136
DELIMITER ;|
 
1137
 
 
1138
SET SQL_MODE = @old_sql_mode;
 
1139
 
 
1140
--exec $MYSQL_DUMP --skip-comments --databases test
 
1141
 
 
1142
DROP TRIGGER tr1;
 
1143
DROP TABLE t1;
 
1144
 
 
1145
--echo #
 
1146
--echo # Bug#13318 Bad result with empty field and --hex-blob
 
1147
--echo #
 
1148
 
 
1149
create table t1 (a binary(1), b blob);
 
1150
insert into t1 values ('','');
 
1151
--exec $MYSQL_DUMP --skip-comments --skip-extended-insert --hex-blob test t1
 
1152
--exec $MYSQL_DUMP --skip-comments --hex-blob test t1
 
1153
drop table t1;
 
1154
 
 
1155
--echo #
 
1156
--echo # Bug#14871 Invalid view dump output
 
1157
--echo #
 
1158
 
 
1159
create table t1 (a int);
 
1160
insert into t1 values (289), (298), (234), (456), (789);
 
1161
create definer = CURRENT_USER view v1 as select * from t1;
 
1162
create SQL SECURITY INVOKER view v2 as select * from t1;
 
1163
create view v3 as select * from t1 with local check option;
 
1164
create algorithm=merge view v4 as select * from t1 with cascaded check option;
 
1165
create algorithm =temptable view v5 as select * from t1;
 
1166
 
 
1167
# dump tables and views
 
1168
--exec $MYSQL_DUMP test > $MYSQLTEST_VARDIR/tmp/bug14871.sql
 
1169
 
 
1170
# drop the db, tables and views
 
1171
drop table t1;
 
1172
drop view v1, v2, v3, v4, v5;
 
1173
 
 
1174
# Reload dump
 
1175
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/bug14871.sql
 
1176
 
 
1177
# check that all tables and views could be created
 
1178
show tables;
 
1179
select * from v3 order by a;
 
1180
 
 
1181
drop table t1;
 
1182
drop view v1, v2, v3, v4, v5;
 
1183
--remove_file $MYSQLTEST_VARDIR/tmp/bug14871.sql
 
1184
 
 
1185
 
 
1186
--echo #
 
1187
--echo # Bug#16878 dump of trigger
 
1188
--echo #
 
1189
 
 
1190
create table t1 (a int, created datetime);
 
1191
create table t2 (b int, created datetime);
 
1192
create trigger tr1 before insert on t1 for each row set
 
1193
new.created=now();
 
1194
delimiter |;
 
1195
create trigger tr2 after insert on t1
 
1196
for each row
 
1197
begin
 
1198
  insert into t2 set b=new.a and created=new.created;
 
1199
end|
 
1200
delimiter ;|
 
1201
 
 
1202
# dump table and trigger
 
1203
--exec $MYSQL_DUMP test > $MYSQLTEST_VARDIR/tmp/bug16878.sql
 
1204
drop trigger tr1;
 
1205
drop trigger tr2;
 
1206
drop table t1, t2;
 
1207
 
 
1208
# reload dump
 
1209
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/bug16878.sql
 
1210
--replace_column 6 #
 
1211
show triggers;
 
1212
drop trigger tr1;
 
1213
drop trigger tr2;
 
1214
drop table t1, t2;
 
1215
--remove_file $MYSQLTEST_VARDIR/tmp/bug16878.sql
 
1216
 
 
1217
 
 
1218
--echo #
 
1219
--echo # Bug#18462 mysqldump does not dump view structures correctly
 
1220
--echo #
 
1221
 
 
1222
create table t (qty int, price int);
 
1223
insert into t values(3, 50);
 
1224
insert into t values(5, 51);
 
1225
create view v1 as select qty, price, qty*price as value from t;
 
1226
create view v2 as select qty from v1;
 
1227
--echo mysqldump {
 
1228
--exec $MYSQL_DUMP --compact -F --tab $MYSQLTEST_VARDIR/tmp test
 
1229
--cat_file $MYSQLTEST_VARDIR/tmp/v1.sql
 
1230
--echo } mysqldump {
 
1231
--cat_file $MYSQLTEST_VARDIR/tmp/v2.sql
 
1232
--echo } mysqldump
 
1233
drop view v1;
 
1234
drop view v2;
 
1235
drop table t;
 
1236
--remove_file $MYSQLTEST_VARDIR/tmp/v1.sql
 
1237
--remove_file $MYSQLTEST_VARDIR/tmp/v2.sql
 
1238
--remove_file $MYSQLTEST_VARDIR/tmp/t.sql
 
1239
--remove_file $MYSQLTEST_VARDIR/tmp/t.txt
 
1240
 
 
1241
 
 
1242
--echo #
 
1243
--echo # Bug#14857 Reading dump files with single statement stored routines fails.
 
1244
--echo # fixed by patch for Bug#16878
 
1245
--echo #
 
1246
 
 
1247
DELIMITER |;
 
1248
/*!50003 CREATE FUNCTION `f`() RETURNS bigint(20)
 
1249
return 42 */|
 
1250
/*!50003 CREATE PROCEDURE `p`()
 
1251
select 42 */|
 
1252
DELIMITER ;|
 
1253
show create function f;
 
1254
show create procedure p;
 
1255
drop function f;
 
1256
drop procedure p;
 
1257
 
 
1258
--echo #
 
1259
--echo # Bug#17371 Unable to dump a schema with invalid views
 
1260
--echo #
 
1261
 
 
1262
create table t1 ( id serial );
 
1263
create view v1 as select * from t1;
 
1264
drop table t1;
 
1265
# mysqldump gets 1356 from server, but gives us 2
 
1266
--echo mysqldump {
 
1267
--error 2
 
1268
--exec $MYSQL_DUMP --force -N --compact --skip-comments test
 
1269
--echo } mysqldump
 
1270
drop view v1;
 
1271
 
 
1272
 
 
1273
--echo # Bug#17201 Spurious 'DROP DATABASE' in output,
 
1274
--echo # also confusion between tables and views.
 
1275
--echo # Example code from Markus Popp
 
1276
 
 
1277
create database mysqldump_test_db;
 
1278
use mysqldump_test_db;
 
1279
create table t1 (id int);
 
1280
create view v1 as select * from t1;
 
1281
insert into t1 values (1232131);
 
1282
insert into t1 values (4711);
 
1283
insert into t1 values (3231);
 
1284
insert into t1 values (0815);
 
1285
--exec $MYSQL_DUMP --skip-comments --add-drop-database --databases mysqldump_test_db
 
1286
drop view v1;
 
1287
drop table t1;
 
1288
drop database mysqldump_test_db;
 
1289
 
 
1290
 
 
1291
--echo #
 
1292
--echo # Bug#21014 Segmentation fault of mysqldump on view
 
1293
--echo #
 
1294
 
 
1295
create database mysqldump_tables;
 
1296
use mysqldump_tables;
 
1297
create table basetable ( id serial, tag varchar(64) );
 
1298
 
 
1299
create database mysqldump_views;
 
1300
use mysqldump_views;
 
1301
create view nasishnasifu as select mysqldump_tables.basetable.id from mysqldump_tables.basetable;
 
1302
 
 
1303
--exec $MYSQL_DUMP --skip-comments --compact --databases mysqldump_tables mysqldump_views
 
1304
 
 
1305
drop view nasishnasifu;
 
1306
drop database mysqldump_views;
 
1307
drop table mysqldump_tables.basetable;
 
1308
drop database mysqldump_tables;
 
1309
 
 
1310
--echo #
 
1311
--echo # Bug#20221 Dumping of multiple databases containing view(s) yields maleformed dumps
 
1312
--echo #
 
1313
 
 
1314
create database mysqldump_dba;
 
1315
use mysqldump_dba;
 
1316
create table t1 (f1 int, f2 int);
 
1317
insert into t1 values (1,1);
 
1318
create view v1 as select f1, f2 from t1;
 
1319
 
 
1320
create database mysqldump_dbb;
 
1321
use mysqldump_dbb;
 
1322
create table t1 (f1 int, f2 int);
 
1323
insert into t1 values (2,2);
 
1324
create view v1 as select f1, f2 from t1;
 
1325
 
 
1326
--exec $MYSQL_DUMP --skip-comments --add-drop-database --databases mysqldump_dba mysqldump_dbb > $MYSQLTEST_VARDIR/tmp/bug20221_backup
 
1327
 
 
1328
drop view v1;
 
1329
drop table t1;
 
1330
drop database mysqldump_dbb;
 
1331
use mysqldump_dba;
 
1332
drop view v1;
 
1333
drop table t1;
 
1334
drop database mysqldump_dba;
 
1335
 
 
1336
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug20221_backup
 
1337
 
 
1338
select * from mysqldump_dba.v1;
 
1339
select * from mysqldump_dbb.v1;
 
1340
 
 
1341
use mysqldump_dba;
 
1342
drop view v1;
 
1343
drop table t1;
 
1344
drop database mysqldump_dba;
 
1345
use mysqldump_dbb;
 
1346
drop view v1;
 
1347
drop table t1;
 
1348
drop database mysqldump_dbb;
 
1349
--remove_file $MYSQLTEST_VARDIR/tmp/bug20221_backup
 
1350
use test;
 
1351
 
 
1352
--echo #
 
1353
--echo # Bug#21215 mysqldump creating incomplete backups without warning
 
1354
--echo #
 
1355
 
 
1356
# Create user without sufficient privs to perform the requested operation
 
1357
create user mysqltest_1@localhost;
 
1358
create table t1(a int, b varchar(34));
 
1359
 
 
1360
# To get consistent output, reset the master, starts over from first log
 
1361
reset master;
 
1362
 
 
1363
# Execute mysqldump, will fail on FLUSH TABLES
 
1364
--error 2
 
1365
--exec $MYSQL_DUMP --compact --master-data -u mysqltest_1 test 2>&1
 
1366
 
 
1367
# Execute mysqldump, will fail on FLUSH TABLES
 
1368
# use --force, should no affect behaviour
 
1369
--error 2
 
1370
--exec $MYSQL_DUMP --compact --force --master-data -u mysqltest_1 test 2>&1
 
1371
 
 
1372
# Add RELOAD grants
 
1373
grant RELOAD on *.* to mysqltest_1@localhost;
 
1374
 
 
1375
# Execute mysqldump, will fail on SHOW MASTER STATUS
 
1376
--error 2
 
1377
--exec $MYSQL_DUMP --compact --master-data -u mysqltest_1 test 2>&1
 
1378
 
 
1379
# Execute mysqldump, will fail on SHOW MASTER STATUS.
 
1380
# use --force, should not alter behaviour
 
1381
--error 2
 
1382
--exec $MYSQL_DUMP --compact --force --master-data -u mysqltest_1 test 2>&1
 
1383
 
 
1384
# Add REPLICATION CLIENT grants
 
1385
grant REPLICATION CLIENT on *.* to mysqltest_1@localhost;
 
1386
 
 
1387
# Execute mysqldump, should now succeed
 
1388
--disable_result_log
 
1389
--exec $MYSQL_DUMP --compact --master-data -u mysqltest_1 test 2>&1
 
1390
--enable_result_log
 
1391
 
 
1392
# Clean up
 
1393
drop table t1;
 
1394
drop user mysqltest_1@localhost;
 
1395
 
 
1396
 
 
1397
--echo #
 
1398
--echo # Bug#21424 mysqldump failing to export/import views
 
1399
--echo #
 
1400
 
 
1401
# Do as root
 
1402
connect (root,localhost,root,,test,$MASTER_MYPORT,$MASTER_MYSOCK);
 
1403
connection root;
 
1404
create database mysqldump_myDB;
 
1405
use mysqldump_myDB;
 
1406
create user myDB_User@localhost;
 
1407
grant create, create view, select, insert on mysqldump_myDB.* to myDB_User@localhost;
 
1408
create table t1 (c1 int);
 
1409
insert into t1 values (3);
 
1410
 
 
1411
# Do as a user
 
1412
connect (user1,localhost,myDB_User,,mysqldump_myDB,$MASTER_MYPORT,$MASTER_MYSOCK);
 
1413
connection user1;
 
1414
use mysqldump_myDB;
 
1415
create table u1 (f1 int);
 
1416
insert into u1 values (4);
 
1417
create view v1 (c1) as select * from t1;
 
1418
 
 
1419
# Backup should not fail for Bug#21527. Flush priviliges test begins.
 
1420
--exec $MYSQL_DUMP --skip-comments --add-drop-table --flush-privileges --ignore-table=mysql.general_log --ignore-table=mysql.slow_log --databases mysqldump_myDB mysql > $MYSQLTEST_VARDIR/tmp/bug21527.sql
 
1421
 
 
1422
# Clean up
 
1423
connection root;
 
1424
use mysqldump_myDB;
 
1425
drop view v1;
 
1426
drop table t1;
 
1427
drop table u1;
 
1428
revoke all privileges on mysqldump_myDB.* from myDB_User@localhost;
 
1429
drop user myDB_User@localhost;
 
1430
drop database mysqldump_myDB;
 
1431
flush privileges;
 
1432
 
 
1433
 
 
1434
--echo # Bug#21424 continues from here.
 
1435
--echo # Restore. Flush Privileges test ends.
 
1436
--echo #
 
1437
 
 
1438
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug21527.sql
 
1439
 
 
1440
# Do as a user
 
1441
connection user1;
 
1442
use mysqldump_myDB;
 
1443
 
 
1444
# Ultimate test for correct data.
 
1445
select * from mysqldump_myDB.v1;
 
1446
select * from mysqldump_myDB.u1;
 
1447
 
 
1448
# Final cleanup.
 
1449
connection root;
 
1450
disconnect user1;
 
1451
use mysqldump_myDB;
 
1452
drop view v1;
 
1453
drop table t1;
 
1454
drop table u1;
 
1455
revoke all privileges on mysqldump_myDB.* from myDB_User@localhost;
 
1456
drop user myDB_User@localhost;
 
1457
drop database mysqldump_myDB;
 
1458
connection default;
 
1459
disconnect root;
 
1460
--remove_file $MYSQLTEST_VARDIR/tmp/bug21527.sql
 
1461
use test;
 
1462
 
 
1463
--echo #
 
1464
--echo # Bug #21527 mysqldump incorrectly tries to LOCK TABLES on the 
 
1465
--echo # information_schema database.
 
1466
--echo #
 
1467
--echo # Bug #33762: mysqldump can not dump INFORMATION_SCHEMA
 
1468
--echo #
 
1469
--exec $MYSQL_DUMP --compact --opt -d information_schema TABLES
 
1470
 
 
1471
--echo #
 
1472
--echo # Bug#19745 mysqldump --xml produces invalid xml
 
1473
--echo #
 
1474
 
 
1475
--disable_warnings
 
1476
DROP TABLE IF EXISTS t1;
 
1477
--enable_warnings
 
1478
 
 
1479
CREATE TABLE t1 (f1 int(10), data MEDIUMBLOB);
 
1480
INSERT INTO t1 VALUES(1,0xff00fef0);
 
1481
 
 
1482
--exec $MYSQL_DUMP --xml --hex-blob --skip-create-options test t1
 
1483
 
 
1484
DROP TABLE t1;
 
1485
 
 
1486
 
 
1487
--echo #
 
1488
--echo # Bug#26346 stack + buffer overrun in mysqldump
 
1489
--echo #
 
1490
 
 
1491
CREATE TABLE t1(a int);
 
1492
INSERT INTO t1 VALUES (1), (2);
 
1493
 
 
1494
# too long a file path causes an error
 
1495
--error 1
 
1496
--exec $MYSQL_DUMP --tab=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa test 2>&1
 
1497
 
 
1498
--exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ --fields-terminated-by=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa test
 
1499
--error 2
 
1500
--exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ --fields-enclosed-by=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa test
 
1501
--error 2
 
1502
--exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ --fields-optionally-enclosed-by=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa test
 
1503
--error 2
 
1504
--exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ --fields-escaped-by=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa test
 
1505
--exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ --lines-terminated-by=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa test
 
1506
 
 
1507
--remove_file $MYSQLTEST_VARDIR/tmp/t1.sql
 
1508
--remove_file $MYSQLTEST_VARDIR/tmp/t1.txt
 
1509
 
 
1510
DROP TABLE t1;
 
1511
 
 
1512
 
 
1513
#
 
1514
# Bug#25993 crashes with a merge table and -c
 
1515
#
 
1516
 
 
1517
CREATE TABLE t2 (a INT);
 
1518
CREATE TABLE t3 (a INT);
 
1519
CREATE TABLE t1 (a INT) ENGINE=merge UNION=(t2, t3);
 
1520
--exec $MYSQL_DUMP --skip-comments -c test
 
1521
DROP TABLE t1, t2, t3;
 
1522
 
 
1523
 
 
1524
--echo #
 
1525
--echo # Bug#23491 MySQLDump prefix function call in a view by database name
 
1526
--echo #
 
1527
 
 
1528
# Setup
 
1529
create database bug23491_original;
 
1530
create database bug23491_restore;
 
1531
use bug23491_original;
 
1532
create table t1 (c1 int);
 
1533
create view v1 as select * from t1;
 
1534
create procedure p1() select 1;
 
1535
create function f1() returns int return 1;
 
1536
create view v2 as select f1();
 
1537
create function f2() returns int return f1();
 
1538
create view v3 as select bug23491_original.f1();
 
1539
 
 
1540
# Backup.
 
1541
--exec $MYSQL_DUMP --skip-comments -uroot --opt --routines bug23491_original > $MYSQLTEST_VARDIR/tmp/bug23491_backup.sql
 
1542
 
 
1543
# Restore.
 
1544
--exec $MYSQL bug23491_restore < $MYSQLTEST_VARDIR/tmp/bug23491_backup.sql
 
1545
 
 
1546
# Verify
 
1547
use bug23491_restore;
 
1548
show create view bug23491_restore.v2;
 
1549
show create view bug23491_restore.v3;
 
1550
 
 
1551
# Cleanup
 
1552
drop database bug23491_original;
 
1553
drop database bug23491_restore;
 
1554
use test;
 
1555
--remove_file $MYSQLTEST_VARDIR/tmp/bug23491_backup.sql
 
1556
 
 
1557
 
 
1558
 
 
1559
--echo #
 
1560
--echo # Bug#27293 mysqldump crashes when dumping routines
 
1561
--echo #           defined by a different user
 
1562
--echo #
 
1563
--echo # Bug#22761 mysqldump reports no errors when using
 
1564
--echo #           --routines without mysql.proc privileges
 
1565
--echo #
 
1566
 
 
1567
create database mysqldump_test_db;
 
1568
 
 
1569
grant all privileges on mysqldump_test_db.*  to user1;
 
1570
grant all privileges on mysqldump_test_db.*  to user2;
 
1571
 
 
1572
connect (user27293,localhost,user1,,mysqldump_test_db,$MASTER_MYPORT,$MASTER_MYSOCK);
 
1573
connection user27293;
 
1574
 
 
1575
create procedure mysqldump_test_db.sp1() select 'hello';
 
1576
 
 
1577
--error 2
 
1578
--exec $MYSQL_DUMP -f --compact --user=user2 --password=  -h 127.0.0.1 -P $MASTER_MYPORT --routines mysqldump_test_db
 
1579
 
 
1580
--exec $MYSQL_DUMP -f --compact --user=user1 --password=  -h 127.0.0.1 -P $MASTER_MYPORT --routines mysqldump_test_db
 
1581
 
 
1582
drop procedure sp1;
 
1583
 
 
1584
connection default;
 
1585
disconnect user27293;
 
1586
drop user user1;
 
1587
drop user user2;
 
1588
 
 
1589
drop database mysqldump_test_db;
 
1590
 
 
1591
--echo #
 
1592
--echo # Bug#28522 buffer overrun by '\0' byte using --hex-blob.
 
1593
--echo #
 
1594
 
 
1595
CREATE TABLE t1 (c1 INT, c2 LONGBLOB);
 
1596
INSERT INTO t1 SET c1=11, c2=REPEAT('q',509);
 
1597
--exec $MYSQL_DUMP --skip-create --compact --hex-blob test t1
 
1598
DROP TABLE t1;
 
1599
 
 
1600
--echo #
 
1601
--echo # Bug#28524 mysqldump --skip-add-drop-table is not
 
1602
--echo #           compatible with views
 
1603
--echo #
 
1604
 
 
1605
CREATE VIEW v1 AS SELECT 1;
 
1606
--exec $MYSQL_DUMP --skip-add-drop-table test > $MYSQLTEST_VARDIR/tmp/bug28524.sql
 
1607
DROP VIEW v1;
 
1608
 
 
1609
--exec $MYSQL test <  $MYSQLTEST_VARDIR/tmp/bug28524.sql
 
1610
SELECT * FROM v1;
 
1611
DROP VIEW v1;
 
1612
--remove_file $MYSQLTEST_VARDIR/tmp/bug28524.sql
 
1613
 
 
1614
 
 
1615
--echo #
 
1616
--echo # Bug#29788 mysqldump discards the NO_AUTO_VALUE_ON_ZERO value of
 
1617
--echo #           the SQL_MODE variable after the dumping of triggers.
 
1618
--echo #
 
1619
 
 
1620
CREATE TABLE t1 (c1 INT);
 
1621
CREATE TRIGGER t1bd BEFORE DELETE ON t1 FOR EACH ROW BEGIN END;
 
1622
 
 
1623
CREATE TABLE t2 (c1 INT NOT NULL AUTO_INCREMENT PRIMARY KEY);
 
1624
 
 
1625
SET @TMP_SQL_MODE = @@SQL_MODE;
 
1626
SET SQL_MODE = 'NO_AUTO_VALUE_ON_ZERO';
 
1627
INSERT INTO t2 VALUES (0), (1), (2);
 
1628
SET SQL_MODE = @TMP_SQL_MODE;
 
1629
SELECT * FROM t2;
 
1630
 
 
1631
--exec $MYSQL_DUMP --routines test >$MYSQLTEST_VARDIR/tmp/bug29788.sql
 
1632
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/bug29788.sql
 
1633
SELECT * FROM t2;
 
1634
 
 
1635
DROP TABLE t1,t2;
 
1636
--remove_file $MYSQLTEST_VARDIR/tmp/bug29788.sql
 
1637
 
 
1638
 
 
1639
--echo #
 
1640
--echo # Bug#29815 new option for suppressing last line of mysqldump:
 
1641
--echo #           "Dump completed on"
 
1642
--echo #
 
1643
 
 
1644
--echo # --skip-dump-date:
 
1645
--replace_regex /-- [^D][^u][^m][^p].*// /\/\*!.*//
 
1646
--exec $MYSQL_DUMP --skip-dump-date test
 
1647
 
 
1648
--echo # --dump-date:
 
1649
--replace_regex /-- [^D][^u][^m][^p].*// /\/\*!.*// / on [0-9 :-]+/ on DATE/
 
1650
--exec $MYSQL_DUMP --dump-date test
 
1651
 
 
1652
--echo # --dump-date (default):
 
1653
--replace_regex /-- [^D][^u][^m][^p].*// /\/\*!.*// / on [0-9 :-]+/ on DATE/
 
1654
--exec $MYSQL_DUMP test
 
1655
 
 
1656
--echo #
 
1657
--echo # Bug #42635: mysqldump includes views that were excluded using 
 
1658
--echo #   the --ignore-table option
 
1659
--echo #
 
1660
 
 
1661
create database db42635;
 
1662
use db42635;
 
1663
create table t1 (id int);
 
1664
create view db42635.v1 (c) as select * from db42635.t1;
 
1665
create view db42635.v2 (c) as select * from db42635.t1;
 
1666
--exec $MYSQL_DUMP --skip-comments --ignore-table=db42635.v1 db42635
 
1667
use test;
 
1668
drop database db42635;
 
1669
 
 
1670
--echo #
 
1671
--echo # Bug#33550 mysqldump 4.0 compatibility broken
 
1672
--echo #
 
1673
 
 
1674
SET NAMES utf8;
 
1675
CREATE TABLE `straße` ( f1 INT );
 
1676
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --default-character-set=utf8 --compatible=mysql323 test
 
1677
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --default-character-set=latin1 --compatible=mysql323 test
 
1678
DROP TABLE `straße`;
 
1679
 
 
1680
CREATE TABLE `כדשגכחךלדגכחשךדגחכךלדגכ` ( f1 INT );
 
1681
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --default-character-set=utf8 --compatible=mysql323 test
 
1682
--error 2
 
1683
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --skip-comments --default-character-set=latin1 --compatible=mysql323 test
 
1684
DROP TABLE `כדשגכחךלדגכחשךדגחכךלדגכ`;
 
1685
SET NAMES latin1;
 
1686
 
 
1687
--echo #
 
1688
--echo # End of 5.0 tests
 
1689
--echo #
 
1690
 
 
1691
# Check new --replace option
 
1692
 
 
1693
--disable_warnings
 
1694
drop table if exists t1;
 
1695
--enable_warnings
 
1696
 
 
1697
CREATE TABLE t1(a int, b int);
 
1698
INSERT INTO t1 VALUES (1,1);
 
1699
INSERT INTO t1 VALUES (2,3);
 
1700
INSERT INTO t1 VALUES (3,4), (4,5);
 
1701
--exec $MYSQL_DUMP --replace --skip-comments test t1
 
1702
DROP TABLE t1;
 
1703
 
 
1704
#
 
1705
# Added for use-thread option
 
1706
#
 
1707
 
 
1708
create table t1 (a text , b text);
 
1709
create table t2 (a text , b text);
 
1710
insert t1 values ("Duck, Duck", "goose");
 
1711
insert t1 values ("Duck, Duck", "pidgeon");
 
1712
insert t2 values ("We the people", "in order to perform");
 
1713
insert t2 values ("a more perfect", "union");
 
1714
select * from t1;
 
1715
select * from t2;
 
1716
--exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ test
 
1717
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/t1.sql
 
1718
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/t2.sql
 
1719
# The first load tests the pausing code
 
1720
--exec $MYSQL_IMPORT --use-threads=1 test $MYSQLTEST_VARDIR/tmp/t1.txt $MYSQLTEST_VARDIR/tmp/t2.txt
 
1721
# Now we test with multiple threads!
 
1722
--exec $MYSQL_IMPORT --silent --use-threads=5 test $MYSQLTEST_VARDIR/tmp/t1.txt $MYSQLTEST_VARDIR/tmp/t2.txt
 
1723
select * from t1;
 
1724
select * from t2;
 
1725
# Now we test with multiple threads, but less threads than files.
 
1726
create table words(a varchar(255));
 
1727
create table words2(b varchar(255));
 
1728
--exec $MYSQL_IMPORT --silent --use-threads=2 test $MYSQLTEST_VARDIR/tmp/t1.txt $MYSQLTEST_VARDIR/tmp/t2.txt $MYSQLTEST_VARDIR/std_data/words.dat $MYSQLTEST_VARDIR/std_data/words2.dat
 
1729
select * from t1;
 
1730
select * from t2;
 
1731
select * from words;
 
1732
select * from words2;
 
1733
 
 
1734
# Drop table "words" and run with threads, should fail
 
1735
drop table words;
 
1736
--replace_regex /.*mysqlimport(\.exe)*/mysql-import/
 
1737
--error 1
 
1738
--exec $MYSQL_IMPORT --silent --use-threads=2 test $MYSQLTEST_VARDIR/tmp/t1.txt $MYSQLTEST_VARDIR/tmp/t2.txt $MYSQLTEST_VARDIR/std_data/words.dat $MYSQLTEST_VARDIR/std_data/words2.dat 2>&1
 
1739
 
 
1740
drop table t1;
 
1741
drop table t2;
 
1742
 
 
1743
drop table words2;
 
1744
 
 
1745
--echo #
 
1746
--echo # Bug#16853 mysqldump doesn't show events
 
1747
--echo #
 
1748
 
 
1749
create database first;
 
1750
use first;
 
1751
set time_zone = 'UTC';
 
1752
 
 
1753
## prove one works (with spaces and tabs on the end)
 
1754
create event ee1 on schedule at '2035-12-31 20:01:23' do set @a=5;              
 
1755
show events;
 
1756
show create event ee1;
 
1757
--exec $MYSQL_DUMP --events first > $MYSQLTEST_VARDIR/tmp/bug16853-1.sql
 
1758
drop database first;
 
1759
 
 
1760
create database second;
 
1761
use second;
 
1762
--exec $MYSQL second < $MYSQLTEST_VARDIR/tmp/bug16853-1.sql
 
1763
show events;
 
1764
show create event ee1;
 
1765
--remove_file $MYSQLTEST_VARDIR/tmp/bug16853-1.sql
 
1766
 
 
1767
## prove three works (with spaces and tabs on the end)
 
1768
# start with one from the previous restore
 
1769
create event ee2 on schedule at '2018-12-31 21:01:23' do set @a=5;            
 
1770
create event ee3 on schedule at '2030-12-31 22:01:23' do set @a=5;              
 
1771
show events;
 
1772
--exec $MYSQL_DUMP --events second > $MYSQLTEST_VARDIR/tmp/bug16853-2.sql
 
1773
drop database second;
 
1774
 
 
1775
create database third;
 
1776
use third;
 
1777
--exec $MYSQL third < $MYSQLTEST_VARDIR/tmp/bug16853-2.sql
 
1778
show events;
 
1779
drop database third;
 
1780
--remove_file $MYSQLTEST_VARDIR/tmp/bug16853-2.sql
 
1781
 
 
1782
# revert back to normal settings
 
1783
set time_zone = 'SYSTEM';
 
1784
use test;
 
1785
 
 
1786
--echo #
 
1787
--echo # Bug#17201 Spurious 'DROP DATABASE' in output,
 
1788
--echo # also confusion between tables and views.
 
1789
--echo # Example code from Markus Popp
 
1790
--echo #
 
1791
 
 
1792
create database mysqldump_test_db;
 
1793
use mysqldump_test_db;
 
1794
create table t1 (id int);
 
1795
create view v1 as select * from t1;
 
1796
insert into t1 values (1232131);
 
1797
insert into t1 values (4711);
 
1798
insert into t1 values (3231);
 
1799
insert into t1 values (0815);
 
1800
--exec $MYSQL_DUMP --skip-comments --add-drop-database --databases mysqldump_test_db
 
1801
drop view v1;
 
1802
drop table t1;
 
1803
drop database mysqldump_test_db;
 
1804
 
 
1805
#
 
1806
# Bug#26121 mysqldump includes LOCK TABLES general_log WRITE
 
1807
#
 
1808
--exec $MYSQL_DUMP --all-databases > $MYSQLTEST_VARDIR/tmp/bug26121.sql
 
1809
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug26121.sql
 
1810
--remove_file $MYSQLTEST_VARDIR/tmp/bug26121.sql
 
1811
 
 
1812
###########################################################################
 
1813
 
 
1814
--echo #
 
1815
--echo # Bug#30027 mysqldump does not dump views properly.
 
1816
--echo #
 
1817
 
 
1818
--echo
 
1819
--echo # Cleanup.
 
1820
 
 
1821
--disable_warnings
 
1822
DROP DATABASE IF EXISTS mysqldump_test_db;
 
1823
--enable_warnings
 
1824
 
 
1825
--echo
 
1826
--echo # Create objects.
 
1827
 
 
1828
CREATE DATABASE mysqldump_test_db;
 
1829
 
 
1830
set names koi8r;
 
1831
 
 
1832
CREATE VIEW mysqldump_test_db.v2 AS SELECT 1 AS �������1;
 
1833
CREATE VIEW mysqldump_test_db.v1 AS SELECT �������1 FROM mysqldump_test_db.v2;
 
1834
 
 
1835
set names latin1;
 
1836
 
 
1837
--echo
 
1838
--echo # Dump mysqldump_test_db to bug30027.sql.
 
1839
 
 
1840
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --default-character-set=latin1 --databases mysqldump_test_db > $MYSQLTEST_VARDIR/tmp/bug30027.sql
 
1841
 
 
1842
--echo
 
1843
--echo # Drop mysqldump_test_db.
 
1844
 
 
1845
DROP DATABASE mysqldump_test_db;
 
1846
 
 
1847
--echo
 
1848
--echo # Restore mysqldump_test_db from bug30027.sql.
 
1849
 
 
1850
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/bug30027.sql
 
1851
 
 
1852
--echo
 
1853
--echo # Check the view.
 
1854
 
 
1855
set names utf8;
 
1856
 
 
1857
SHOW CREATE VIEW mysqldump_test_db.v1;
 
1858
SHOW CREATE VIEW mysqldump_test_db.v2;
 
1859
 
 
1860
set names latin1;
 
1861
 
 
1862
--echo
 
1863
--echo # Cleanup.
 
1864
 
 
1865
DROP DATABASE mysqldump_test_db;
 
1866
--remove_file $MYSQLTEST_VARDIR/tmp/bug30027.sql
 
1867
 
 
1868
###########################################################################
 
1869
 
 
1870
--echo #
 
1871
--echo # Bug#29938 wrong behavior of mysqldump --skip-events
 
1872
--echo #           with --all-databases
 
1873
--echo #
 
1874
 
 
1875
TRUNCATE mysql.event;
 
1876
 
 
1877
USE test;
 
1878
CREATE event e29938 ON SCHEDULE AT '2035-12-31 20:01:23' DO SET @bug29938=29938;
 
1879
SHOW EVENTS;
 
1880
--exec $MYSQL_DUMP --skip-events --all-databases > $MYSQLTEST_VARDIR/tmp/bug29938.sql
 
1881
 
 
1882
TRUNCATE mysql.event;
 
1883
--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/bug29938.sql
 
1884
SHOW EVENTS;
 
1885
--remove_file $MYSQLTEST_VARDIR/tmp/bug29938.sql
 
1886
 
 
1887
 
 
1888
--echo #
 
1889
--echo # Bug#31113 mysqldump 5.1 can't handle a dash ("-") in database names
 
1890
--echo #
 
1891
create database `test-database`;
 
1892
use `test-database`;
 
1893
create table test (a int);
 
1894
--exec $MYSQL_DUMP --compact --opt --quote-names test-database
 
1895
drop database `test-database`;
 
1896
use test;
 
1897
 
 
1898
###########################################################################
 
1899
 
 
1900
--echo
 
1901
--echo # -----------------------------------------------------------------
 
1902
--echo # -- Bug#30217 Views: changes in metadata behaviour between 5.0 and 5.1.
 
1903
--echo # -----------------------------------------------------------------
 
1904
--echo
 
1905
 
 
1906
--disable_warnings
 
1907
DROP DATABASE IF EXISTS mysqldump_test_db;
 
1908
--enable_warnings
 
1909
 
 
1910
CREATE DATABASE mysqldump_test_db;
 
1911
use mysqldump_test_db;
 
1912
 
 
1913
--echo
 
1914
 
 
1915
CREATE VIEW v1(x, y) AS SELECT 'a', 'a';
 
1916
 
 
1917
--echo
 
1918
 
 
1919
SELECT view_definition
 
1920
FROM INFORMATION_SCHEMA.VIEWS
 
1921
WHERE table_schema = 'mysqldump_test_db' AND table_name = 'v1';
 
1922
 
 
1923
--echo
 
1924
 
 
1925
--echo ---> Dumping mysqldump_test_db to bug30217.sql
 
1926
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --databases mysqldump_test_db > $MYSQLTEST_VARDIR/tmp/bug30217.sql
 
1927
 
 
1928
--echo
 
1929
 
 
1930
DROP DATABASE mysqldump_test_db;
 
1931
use test;
 
1932
 
 
1933
--echo
 
1934
 
 
1935
--echo ---> Restoring mysqldump_test_db...
 
1936
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/bug30217.sql
 
1937
 
 
1938
--echo
 
1939
 
 
1940
SELECT view_definition
 
1941
FROM INFORMATION_SCHEMA.VIEWS
 
1942
WHERE table_schema = 'mysqldump_test_db' AND table_name = 'v1';
 
1943
 
 
1944
--echo
 
1945
 
 
1946
DROP DATABASE mysqldump_test_db;
 
1947
--remove_file $MYSQLTEST_VARDIR/tmp/bug30217.sql
 
1948
 
 
1949
--echo
 
1950
--echo # -- End of test case for Bug#32538.
 
1951
--echo
 
1952
 
 
1953
--echo #
 
1954
--echo # Bug#37377 Incorrect DROP TABLE statement in dump of a VIEW using --tab
 
1955
--echo #
 
1956
 
 
1957
create table t1 (a int);
 
1958
create view v1 as select a from t1;
 
1959
 
 
1960
--exec $MYSQL_DUMP --skip-comments --tab=$MYSQLTEST_VARDIR/tmp/ test t1 v1
 
1961
 
 
1962
drop view v1;
 
1963
drop table t1;
 
1964
 
 
1965
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/t1.sql
 
1966
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/v1.sql
 
1967
 
 
1968
drop view v1;
 
1969
drop table t1;
 
1970
 
 
1971
--remove_file $MYSQLTEST_VARDIR/tmp/t1.sql
 
1972
--remove_file $MYSQLTEST_VARDIR/tmp/t1.txt
 
1973
--remove_file $MYSQLTEST_VARDIR/tmp/v1.sql
 
1974
 
 
1975
 
 
1976
--echo #
 
1977
--echo # Bug#28071 mysqlimport does not quote or escape table name
 
1978
--echo #
 
1979
 
 
1980
--disable_warnings
 
1981
drop table if exists `load`;
 
1982
--enable_warnings
 
1983
create table `load` (a varchar(255));
 
1984
 
 
1985
--copy_file std_data/words.dat $MYSQLTEST_VARDIR/tmp/load.txt
 
1986
 
 
1987
--exec $MYSQL_IMPORT --ignore test $MYSQLTEST_VARDIR/tmp/load.txt
 
1988
 
 
1989
select count(*) from `load`;
 
1990
 
 
1991
--remove_file $MYSQLTEST_VARDIR/tmp/load.txt
 
1992
 
 
1993
drop table `load`;
 
1994
 
 
1995
# We reset concurrent_inserts value to whatever it was at the start of the
 
1996
# test This line must be executed _after_ all test cases.
 
1997
SET @@GLOBAL.CONCURRENT_INSERT = @OLD_CONCURRENT_INSERT;
 
1998
 
 
1999
 
 
2000
###########################################################################
 
2001
 
 
2002
--echo
 
2003
--echo Bug #34861 - mysqldump with --tab gives weird output for triggers.
 
2004
--echo
 
2005
 
 
2006
CREATE TABLE t1 (f1 INT);
 
2007
CREATE TRIGGER tr1 BEFORE UPDATE ON t1 FOR EACH ROW SET @f1 = 1;
 
2008
CREATE PROCEDURE pr1 () SELECT "Meow";
 
2009
CREATE EVENT ev1 ON SCHEDULE AT '2030-01-01 00:00:00' DO SELECT "Meow";
 
2010
 
 
2011
--echo
 
2012
SHOW TRIGGERS;
 
2013
SHOW EVENTS;
 
2014
SELECT name,body FROM mysql.proc WHERE NAME = 'pr1';
 
2015
 
 
2016
--echo
 
2017
--echo dump table; if anything goes to stdout, it ends up here: ---------------
 
2018
--exec $MYSQL_DUMP --compact --routines --triggers --events --result-file=$MYSQLTEST_VARDIR/tmp/test_34861.sql --tab=$MYSQLTEST_VARDIR/tmp/ test
 
2019
 
 
2020
--echo
 
2021
--echo drop everything
 
2022
DROP EVENT ev1;
 
2023
DROP TRIGGER tr1;
 
2024
DROP TABLE t1;
 
2025
DROP PROCEDURE pr1;
 
2026
 
 
2027
--echo
 
2028
--echo reload table; this should restore table and trigger
 
2029
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/t1.sql
 
2030
SHOW TRIGGERS;
 
2031
SHOW EVENTS;
 
2032
SELECT name,body FROM mysql.proc WHERE NAME = 'pr1';
 
2033
 
 
2034
--echo
 
2035
--echo reload db; this should restore routines and events
 
2036
--exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/test_34861.sql
 
2037
SHOW TRIGGERS;
 
2038
SHOW EVENTS;
 
2039
SELECT name,body FROM mysql.proc WHERE NAME = 'pr1';
 
2040
 
 
2041
--echo
 
2042
--echo cleanup
 
2043
--remove_file $MYSQLTEST_VARDIR/tmp/t1.txt
 
2044
--remove_file $MYSQLTEST_VARDIR/tmp/t1.sql
 
2045
--remove_file $MYSQLTEST_VARDIR/tmp/test_34861.sql
 
2046
--disable_warnings
 
2047
DROP EVENT IF EXISTS ev1;
 
2048
DROP PROCEDURE IF EXISTS pr1;
 
2049
DROP TRIGGER IF EXISTS tr1;
 
2050
DROP TABLE IF EXISTS t1;
 
2051
--enable_warnings
 
2052
 
 
2053
###########################################################################
 
2054
 
 
2055
--echo #
 
2056
--echo # Bug #30946: mysqldump silently ignores --default-character-set
 
2057
--echo #             when used with --tab
 
2058
--echo #
 
2059
--echo # Also see outfile_loaddata.test
 
2060
--echo #
 
2061
 
 
2062
SET NAMES utf8;
 
2063
CREATE TABLE t1 (a INT, b CHAR(10) CHARSET koi8r, c CHAR(10) CHARSET latin1);
 
2064
CREATE TABLE t2 LIKE t1;
 
2065
INSERT INTO t1 VALUES (1, 'ABC-АБВ', 'DEF-ÂÃÄ'), (2, NULL, NULL);
 
2066
 
 
2067
--let $file=$MYSQLTEST_VARDIR/tmp/t1.txt
 
2068
 
 
2069
 
 
2070
--echo # error on multi-character ENCLOSED/ESCAPED BY
 
2071
 
 
2072
--error 2
 
2073
--exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ --fields-enclosed-by='12345' test t1
 
2074
--remove_file $file
 
2075
 
 
2076
--error 2
 
2077
--exec $MYSQL_DUMP --tab=$MYSQLTEST_VARDIR/tmp/ --fields-escaped-by='12345' test t1
 
2078
--remove_file $file
 
2079
 
 
2080
--echo # default '--default-charset' (binary):
 
2081
 
 
2082
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --tab=$MYSQLTEST_VARDIR/tmp/ test t1
 
2083
--echo ##################################################
 
2084
--cat_file $file
 
2085
--echo ##################################################
 
2086
TRUNCATE t2;
 
2087
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 
2088
--eval LOAD DATA INFILE '$file' INTO TABLE t2 CHARACTER SET binary
 
2089
--remove_file $file
 
2090
SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
 
2091
 
 
2092
 
 
2093
--echo # utf8:
 
2094
 
 
2095
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --default-character-set=utf8 --tab=$MYSQLTEST_VARDIR/tmp/ test t1
 
2096
--echo ##################################################
 
2097
--cat_file $file
 
2098
--echo ##################################################
 
2099
TRUNCATE t2;
 
2100
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 
2101
--eval LOAD DATA INFILE '$file' INTO TABLE t2 CHARACTER SET utf8
 
2102
--remove_file $file
 
2103
SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
 
2104
 
 
2105
 
 
2106
--echo # latin1 (data corruption is expected):
 
2107
 
 
2108
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --default-character-set=latin1 --tab=$MYSQLTEST_VARDIR/tmp/ test t1
 
2109
--echo ##################################################
 
2110
--cat_file $file
 
2111
--echo ##################################################
 
2112
TRUNCATE t2;
 
2113
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 
2114
--eval LOAD DATA INFILE '$file' INTO TABLE t2 CHARACTER SET latin1 
 
2115
--remove_file $file
 
2116
SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
 
2117
 
 
2118
 
 
2119
--echo # koi8r (data corruption is expected):
 
2120
 
 
2121
--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --default-character-set=koi8r --tab=$MYSQLTEST_VARDIR/tmp/ test t1
 
2122
--echo ##################################################
 
2123
--cat_file $file
 
2124
--echo ##################################################
 
2125
TRUNCATE t2;
 
2126
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 
2127
--eval LOAD DATA INFILE '$file' INTO TABLE t2 CHARACTER SET koi8r
 
2128
--remove_file $file
 
2129
SELECT * FROM t1 UNION SELECT * FROM t2 ORDER BY a, b, c;
 
2130
 
 
2131
 
 
2132
SET NAMES default;
 
2133
 
 
2134
DROP TABLE t1, t2;
 
2135
 
 
2136
###########################################################################
 
2137
--echo #
 
2138
--echo # End of 5.1 tests
 
2139
--echo #
 
2140
 
 
2141
# Wait till we reached the initial number of concurrent sessions
 
2142
--source include/wait_until_count_sessions.inc