mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-13 09:17:18 +00:00
chore(DB): import pending SQL update file
Referenced commit(s): 394ae6fd00
This commit is contained in:
52
data/sql/updates/db_auth/2021_03_21_00.sql
Normal file
52
data/sql/updates/db_auth/2021_03_21_00.sql
Normal file
@@ -0,0 +1,52 @@
|
||||
-- DB update 2021_01_25_00 -> 2021_03_21_00
|
||||
DROP PROCEDURE IF EXISTS `updateDb`;
|
||||
DELIMITER //
|
||||
CREATE PROCEDURE updateDb ()
|
||||
proc:BEGIN DECLARE OK VARCHAR(100) DEFAULT 'FALSE';
|
||||
SELECT COUNT(*) INTO @COLEXISTS
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'version_db_auth' AND COLUMN_NAME = '2021_01_25_00';
|
||||
IF @COLEXISTS = 0 THEN LEAVE proc; END IF;
|
||||
START TRANSACTION;
|
||||
ALTER TABLE version_db_auth CHANGE COLUMN 2021_01_25_00 2021_03_21_00 bit;
|
||||
SELECT sql_rev INTO OK FROM version_db_auth WHERE sql_rev = '1615629613255169700'; IF OK <> 'FALSE' THEN LEAVE proc; END IF;
|
||||
--
|
||||
-- START UPDATING QUERIES
|
||||
--
|
||||
|
||||
INSERT INTO `version_db_auth` (`sql_rev`) VALUES ('1615629613255169700');
|
||||
|
||||
-- update `account` structure
|
||||
-- sha_pass_hash/s/v kept around for now, for backwards compatibility
|
||||
ALTER TABLE `account`
|
||||
DROP COLUMN `sessionkey`,
|
||||
ADD COLUMN `salt` BINARY(32) AFTER `username`,
|
||||
ADD COLUMN `verifier` BINARY(32) AFTER `salt`,
|
||||
ADD COLUMN `session_key` BINARY(40) AFTER `verifier`,
|
||||
MODIFY COLUMN `s` VARCHAR(64) NOT NULL DEFAULT 'dummy value, use `salt` instead',
|
||||
MODIFY COLUMN `v` VARCHAR(64) NOT NULL DEFAULT 'dummy value, use `verifier` instead';
|
||||
|
||||
UPDATE `account` SET `salt`=REVERSE(UNHEX(`s`)), `s`=DEFAULT WHERE LENGTH(`s`)=64;
|
||||
UPDATE `account` SET `verifier`=REVERSE(UNHEX(`v`)), `v`=DEFAULT WHERE LENGTH(`v`)=64;
|
||||
|
||||
ALTER TABLE `account`
|
||||
DROP COLUMN `session_key`,
|
||||
ADD COLUMN `session_key` BINARY(40) DEFAULT NULL AFTER `verifier`;
|
||||
|
||||
UPDATE `account` SET `salt`=UNHEX(CONCAT(MD5(RAND()),MD5(RAND()))), `verifier`=UNHEX(CONCAT(MD5(RAND()),MD5(RAND()))) WHERE `salt` IS NULL OR `verifier` IS NULL;
|
||||
|
||||
ALTER TABLE `account`
|
||||
DROP COLUMN `s`,
|
||||
DROP COLUMN `v`,
|
||||
DROP COLUMN `sha_pass_hash`,
|
||||
MODIFY COLUMN `salt` BINARY(32) NOT NULL,
|
||||
MODIFY COLUMN `verifier` BINARY(32) NOT NULL;
|
||||
|
||||
--
|
||||
-- END UPDATING QUERIES
|
||||
--
|
||||
COMMIT;
|
||||
END //
|
||||
DELIMITER ;
|
||||
CALL updateDb();
|
||||
DROP PROCEDURE IF EXISTS `updateDb`;
|
||||
Reference in New Issue
Block a user