Mysql outdated database schema fix

* Rename your existing tables

ALTER TABLE pstone_cuboids RENAME TO pstone_cuboids_bak;

ALTER TABLE pstone_fields RENAME TO pstone_fields_bak;

ALTER TABLE pstone_players RENAME TO pstone_players_bak;

* Re-create the tables using the updated schema

CREATE TABLE IF NOT EXISTS `pstone_cuboids` ( `id` bigint(20) NOT NULL auto_increment, `parent` bigint(20) NOT NULL, `x` int(11) default NULL, `y` int(11) default NULL, `z` int(11) default NULL, `world` varchar(25) default NULL, `minx` int(11) default NULL, `maxx` int(11) default NULL, `miny` int(11) default NULL, `maxy` int(11) default NULL, `minz` int(11) default NULL, `maxz` int(11) default NULL, `velocity` float default NULL, `type_id` int(11) default NULL, `owner` varchar(16) NOT NULL, `name` varchar(50) NOT NULL, `packed_allowed` text NOT NULL, `last_used` bigint(20) Default NULL, `flags` TEXT NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uq_cuboid_fields_1` (`x`,`y`,`z`,`world`));

CREATE TABLE IF NOT EXISTS `pstone_fields` ( `id` bigint(20) NOT NULL auto_increment, `x` int(11) default NULL, `y` int(11) default NULL, `z` int(11) default NULL, `world` varchar(25) default NULL, `radius` int(11) default NULL, `height` int(11) default NULL, `velocity` float default NULL, `type_id` int(11) default NULL, `owner` varchar(16) NOT NULL, `name` varchar(50) NOT NULL, `packed_allowed` text NOT NULL, `last_used` bigint(20) Default NULL, `flags` TEXT NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uq_pstone_fields_1` (`x`,`y`,`z`,`world`));

CREATE TABLE IF NOT EXISTS `pstone_players` ( `id` bigint(20), `player_name` varchar(16) NOT NULL, `last_seen` bigint(20) default NULL, flags TEXT default NULL, PRIMARY KEY (`player_name`));

* Copy the data from your old tables to the new ones

INSERT INTO pstone_fields SELECT * FROM pstone_fields_bak;

INSERT INTO pstone_fields SELECT * FROM pstone_fields_bak;

INSERT INTO pstone_players SELECT * FROM pstone_players_bak;

* once you verify that all your data has made it to the new tables you can delete the backup tables

DROP TABLE pstone_players_bak;

DROP TABLE pstone_fields_bak;

DROP TABLE pstone_cuboids_bak;


Comments

Posts Quoted:
Reply
Clear All Quotes