powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / FOREIGN KEY проблема
7 сообщений из 7, страница 1 из 1
FOREIGN KEY проблема
    #39877245
Фотография alexnews
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приветствую СПЕЦЫ!

У меня проблема такого плана:
Есть Большая таблица пользователей на которую ссылаются большинство таблиц, Мне нужно ее почистить так как в ней около 50 лишних полей, которые ушли в другие таблицы, таблица тяжелая более 10млн записей. Блокировать продакшен можно но не на долго.
На сколько я представляю есть два пути как убрать эти поля из таблицы:
1. Тупо удалить из таблицы нужные поля и забыть но это занимает больше пяти часов
2. Сделать новую таблицу со всеми стандартами и туда все вставить со старой (что я и сделал), затем поменять местами и типа все получилось! Однако тут другая проблема, все таблицы будут отправлять FOREIGN KEY на старую таблицу как бы я ее не называл. А это означает мне нужно все заграничные ключи менять на новую таблицу.

Так вот вопрос: Как бы вы поступили на моем месте? Заранее спасибо за ответ.
...
Рейтинг: 0 / 0
FOREIGN KEY проблема
    #39877249
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexnewsвсе таблицы будут отправлять FOREIGN KEY на старую таблицу как бы я ее не называлдаже если внешние ключи выключить?
...
Рейтинг: 0 / 0
FOREIGN KEY проблема
    #39877250
Фотография alexnews
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftalexnewsвсе таблицы будут отправлять FOREIGN KEY на старую таблицу как бы я ее не называлдаже если внешние ключи выключить?
А что это изменит? выключил - хорошо, но потом их нужно будет включить но они будут направлены на старую таблицу - значит нужно менять все ключи во всех таблицах чтобы перенаправлять на новую
...
Рейтинг: 0 / 0
FOREIGN KEY проблема
    #39877251
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexnewsmiksoftпропущено...
даже если внешние ключи выключить?
А что это изменит? выключил - хорошо, но потом их нужно будет включить но они будут направлены на старую таблицу - значит нужно менять все ключи во всех таблицах чтобы перенаправлять на новуюэто точно? Вы это проверили?

По крайней мере, в более старых версиях выключенные внешние ключи могли указывать даже на несуществующую таблицу.
...
Рейтинг: 0 / 0
FOREIGN KEY проблема
    #39877258
Фотография alexnews
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftalexnewsпропущено...

А что это изменит? выключил - хорошо, но потом их нужно будет включить но они будут направлены на старую таблицу - значит нужно менять все ключи во всех таблицах чтобы перенаправлять на новуюэто точно? Вы это проверили?

По крайней мере, в более старых версиях выключенные внешние ключи могли указывать даже на несуществующую таблицу.

 Нет вы не поняли, оно будет работать, но какой смысл? Мне же нужно направить ключи на новую таблицу, чтобы база была правильная без левого мусора. Может я что то не так рассказал?
...
Рейтинг: 0 / 0
FOREIGN KEY проблема
    #39877267
retvizan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexnews,

1. отключить проверку внешних ключей
2. удалить старую таблицу
3. переименовать новую в старую
4. включить внешние ключи

p.s. проверьте сначала для своей версии
...
Рейтинг: 0 / 0
FOREIGN KEY проблема
    #39877289
Фотография alexnews
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
retvizanalexnews,

1. отключить проверку внешних ключей
2. удалить старую таблицу
3. переименовать новую в старую
4. включить внешние ключи
p.s. проверьте сначала для своей версии

Версия 5.6.10,  работает!!! Спасибо!!! не работает если я пытаюсь оригинальную таблицу переименовать, а если удаляю и затем переименовываю то работает!! Спасибо ОГРОМНОЕ!!!
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / FOREIGN KEY проблема
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]