Объедение двух баз

Статус
В этой теме нельзя размещать новые ответы.

linpc

Гуру форума
Регистрация
6 Апр 2012
Сообщения
178
Реакции
55
Имеется два онлайн проекта игр, решили объединиться и перейти на один сервер. Возникла проблема с полем User то что ID могут совпадать или поле Login. Нам нужно их как то соединить, структуры тоже разные) Второе имеется поле inventar где вещи лежат по ID персонажам, нужно их сменить в соответствии как будут меняться ID поля user.
Кто что может подсказать по этому поводу?
 
Сделайте клона своей базы
update user_table set id=id+X (где X - этом максимальный ID проекта, с которым сливаете + 100 для верности. Ремарка - смотрите, чтобы эта операция была в меньшей по макс. ID базе, чтобы не получилось, что X не перекроет уровень вашего максимального ID в текущей базе)
Таким же путем поднимите ID пользователей во всех других таблицах.
И через insert into обязательно вместе с ID пользователя вставляйте данные в другую базу
 
Сделайте клона своей базы
update user_table set id=id+X (где X - этом максимальный ID проекта, с которым сливаете + 100 для верности. Ремарка - смотрите, чтобы эта операция была в меньшей по макс. ID базе, чтобы не получилось, что X не перекроет уровень вашего максимального ID в текущей базе)
Таким же путем поднимите ID пользователей во всех других таблицах.
И через insert into обязательно вместе с ID пользователя вставляйте данные в другую базу
Что то я Вас не понял... Но есть идея.
Примерно так:
1. Сделать структуры одинаковыми.
2. Импорт через PHP
3. $it=mysql_fetch_array(mysql_query("SELECT max(`id`) as `id` FROM `user` WHERE `type`='1'")); - Чтение последнего ID
 
Что то я Вас не понял... Но есть идея.
3. $it=mysql_fetch_array(mysql_query("SELECT max(`id`) as `id` FROM `user` WHERE `type`='1'")); - Чтение последнего ID
Идея в том, чтобы в 1 из баз поднять все ID заведомо выше другой базы (не в 1, а во всех таблицах привязанных по ID) и потом спокойно перелить. А что Вы будете делать со своим чудо запросом я честно говоря затрудняюсь ответить
 
Кстати говоря - после объединения двух баз - способом, который описал tan_81 (сам недавно объединял таким образом два крупных форумных проЭкта) вероятно всего потребуется произвести поиск по новой "объединенной" базе на наличие клонов, определенным mysql-запросом. Ведь наверняка у вас будут дубликаты учеток..
 
Подскажите пожалуйста каким образом можно перевести таблицы из Myism в InnoDB, при условии что базу удалять нельзя?
Буду очень благодарен за ответ.
 
Подскажите пожалуйста каким образом можно перевести таблицы из Myism в InnoDB, при условии что базу удалять нельзя?
Буду очень благодарен за ответ.
ALTER TABLE `code` ENGINE=MyISAM;

или для пущей безопасности сделать копию удалив потом исходную таблицу:
Код:
CREATE TABLE `copy` LIKE code;
ALTER TABLE `copy` ENGINE=MyISAM;
INSERT INTO `copy` SELECT * FROM code;
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху