125 lines
3.6 KiB
Plaintext
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;
|