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
|
SET default_storage_engine=InnoDB;
SET GLOBAL innodb_file_per_table=ON;
#
# Create a temporary table and drop it. Make sure the ibd file is gone.
# Make sure a discarded table can be dropped with all files deleted.
#
CREATE TEMPORARY TABLE t14169459_1 (a INT, b TEXT) engine=InnoDB;
CREATE TABLE t14169459_2 (a INT, b TEXT) engine=InnoDB;
INSERT INTO t14169459_1 VALUES (1, 'one'),(2, 'two');
INSERT INTO t14169459_2 VALUES (1, 'one'),(2, 'two');
SELECT * FROM t14169459_1;
a b
1 one
2 two
SELECT * FROM t14169459_2;
a b
1 one
2 two
SHOW CREATE TABLE t14169459_1;
Table Create Table
t14169459_1 CREATE TEMPORARY TABLE `t14169459_1` (
`a` int(11) DEFAULT NULL,
`b` text
) ENGINE=InnoDB DEFAULT CHARSET=latin1
SHOW CREATE TABLE t14169459_2;
Table Create Table
t14169459_2 CREATE TABLE `t14169459_2` (
`a` int(11) DEFAULT NULL,
`b` text
) ENGINE=InnoDB DEFAULT CHARSET=latin1
### directory of MYSQL_DATA_DIR/test
t14169459_2.frm
t14169459_2.ibd
### directory of MYSQL_TMP_DIR/mysqld.1
#sql<temporary>.ibd
FLUSH TABLES t14169459_2 FOR EXPORT;
SELECT * FROM t14169459_2;
a b
1 one
2 two
UNLOCK TABLES;
### directory of MYSQL_DATA_DIR/test
t14169459_2.frm
t14169459_2.ibd
ALTER TABLE t14169459_2 DISCARD TABLESPACE;
SELECT * FROM t14169459_2;
ERROR HY000: Tablespace has been discarded for table 't14169459_2'
### directory of MYSQL_DATA_DIR/test
t14169459_2.frm
### directory of MYSQL_TMP_DIR/mysqld.1
#sql<temporary>.ibd
DROP TABLE t14169459_1;
DROP TABLE t14169459_2;
### directory of MYSQL_DATA_DIR/test
### directory of MYSQL_TMP_DIR/mysqld.1
|