polardbxengine/mysql-test/suite/innodb/r/portability_basic.result

125 lines
3.6 KiB
Plaintext

## create tables and tablespaces without absolute paths
CREATE TABLESPACE ts1 ADD DATAFILE 'ts1.ibd' Engine=InnoDB;
CREATE TABLE tab1(c1 int, c2 varchar(10)) TABLESPACE=ts1;
INSERT INTO tab1 VALUES(1, 'VISH');
CREATE TABLE tab2(c1 int, c2 varchar(10)) Engine=InnoDB;
INSERT INTO tab2 VALUES(2, 'VISH');
CREATE INDEX ix1 ON tab1(c2) USING BTREE;
CREATE INDEX ix1 ON tab2(c2) ;
CREATE UNDO TABLESPACE undo_003 ADD DATAFILE 'undo_003.ibu';
CREATE UNDO TABLESPACE undo_004 ADD DATAFILE 'undo_004.ibu';
SELECT file_name,file_type,tablespace_name FROM
INFORMATION_SCHEMA.FILES
WHERE FILE_TYPE LIKE '%undo%';
FILE_NAME FILE_TYPE TABLESPACE_NAME
./undo_001 UNDO LOG innodb_undo_001
./undo_002 UNDO LOG innodb_undo_002
./undo_003.ibu UNDO LOG undo_003
./undo_004.ibu UNDO LOG undo_004
## Stop DB server
# Copy whole --datadir files into new location
## Start with new --datadir
## Check datadir started with new one
SELECT @@datadir;
@@datadir
NEW_DATADIR/
## Check with SHOW
SHOW CREATE TABLE tab1;
Table Create Table
tab1 CREATE TABLE `tab1` (
`c1` int(11) DEFAULT NULL,
`c2` varchar(10) DEFAULT NULL,
KEY `ix1` (`c2`) USING BTREE
) /*!50100 TABLESPACE `ts1` */ ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
SHOW CREATE TABLE tab2;
Table Create Table
tab2 CREATE TABLE `tab2` (
`c1` int(11) DEFAULT NULL,
`c2` varchar(10) DEFAULT NULL,
KEY `ix1` (`c2`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
## Check with DML and DDL
SELECT * FROM tab1;
c1 c2
1 VISH
SELECT * FROM tab2;
c1 c2
2 VISH
ALTER UNDO TABLESPACE innodb_undo_001 SET INACTIVE;
ALTER UNDO TABLESPACE innodb_undo_002 SET INACTIVE;
SELECT name,space_type,state
FROM INFORMATION_SCHEMA.INNODB_TABLESPACES
WHERE space_type = 'Undo';
name space_type state
innodb_undo_001 Undo empty
innodb_undo_002 Undo empty
undo_003 Undo active
undo_004 Undo active
DELETE FROM tab1;
DELETE FROM tab2;
ALTER TABLE tab1 add column c3 varchar(10);
INSERT INTO tab1 VALUES(1, 'VISH','NATH');
INSERT INTO tab2 VALUES(2, 'VISH');
SELECT * FROM tab1;
c1 c2 c3
1 VISH NATH
SELECT * FROM tab2;
c1 c2
2 VISH
SELECT name,space_type,state
FROM INFORMATION_SCHEMA.INNODB_TABLESPACES
WHERE space_type = 'Undo';
name space_type state
innodb_undo_001 Undo empty
innodb_undo_002 Undo empty
undo_003 Undo active
undo_004 Undo active
ALTER UNDO TABLESPACE innodb_undo_001 SET ACTIVE;
ALTER UNDO TABLESPACE innodb_undo_002 SET ACTIVE;
ALTER UNDO TABLESPACE undo_003 SET INACTIVE;
ALTER UNDO TABLESPACE undo_004 SET INACTIVE;
SELECT name,space_type,state
FROM INFORMATION_SCHEMA.INNODB_TABLESPACES
WHERE space_type = 'Undo';
name space_type state
innodb_undo_001 Undo active
innodb_undo_002 Undo active
undo_003 Undo empty
undo_004 Undo empty
# Clean up new datadir
DROP TABLE tab1;
DROP TABLE tab2;
DROP TABLESPACE ts1;
DROP UNDO TABLESPACE undo_003;
DROP UNDO TABLESPACE undo_004;
# Stop DB server with new datadir
# Re-start with old --datadir
# restart: --datadir=OLD_DATADIR
# Check --datadir started with old
SELECT @@datadir;
@@datadir
OLD_DATADIR
DROP TABLE tab1;
DROP TABLE tab2;
DROP TABLESPACE ts1;
SELECT name,space_type,state
FROM INFORMATION_SCHEMA.INNODB_TABLESPACES
WHERE space_type = 'Undo';
name space_type state
innodb_undo_001 Undo active
innodb_undo_002 Undo active
undo_003 Undo active
undo_004 Undo active
ALTER UNDO TABLESPACE undo_003 SET INACTIVE;
ALTER UNDO TABLESPACE undo_004 SET INACTIVE;
SELECT name,space_type,state
FROM INFORMATION_SCHEMA.INNODB_TABLESPACES
WHERE space_type = 'Undo';
name space_type state
innodb_undo_001 Undo active
innodb_undo_002 Undo active
undo_003 Undo empty
undo_004 Undo empty
DROP UNDO TABLESPACE undo_003;
DROP UNDO TABLESPACE undo_004;