dukanich
Новичок
Перенос БД с Win на *nix-сервер. Разные регистры файлов, таблиц.
Здравствуйте уважаемые.
Во время работы с БД (на win) создавались и изменялись имена таблиц и хранимые процедуры. Так получилось, что в разных процедурах одна и та же таблица имеет разный регистр имен (например: table и TABLE). К сожалению, я не мог предположить, что эту базу будут переносить на *nix сервер (Ubuntu), и о корректности имен даже не задумался. В винде (на локальной машине) все работает замечательно, а на убунту ругается на отсутствие таблицы.
Была мысль исправить все имена таблиц на нижний регистр, как в базе так и в процедурах, но возникла другая проблема, если через dbForge пытаюсь посмотреть текст процедур, выдает ошибку - "Не удалось получить текст SQL для объекта 'GetMan' / Возможно, у вас недостаточно привилегий для получения метаданных данного объекта. ". Скорее всего процедуры не читаются из-за того, что в именах файлов разные регистры ('.frm' и '.MYI', '.MYD').
Так же есть мысль по поводу параметра lower_case_table_names. На локальной машине (win), он равен 2, а на nix-сервере - 0.
Как по вашему мнению решить эту проблему?
Переименовать все файлы на сервере в нижний регистр? Выставить lower_case_table_names на nix-сервере в 1, или сделать "все правильно" на локальной машине и уже загрузить базу заново? База большая, около 70Гб, поэтому рисковать не хотелось бы. И так прилично накосячил из-за невнимательности
Спасибо.
Здравствуйте уважаемые.
Во время работы с БД (на win) создавались и изменялись имена таблиц и хранимые процедуры. Так получилось, что в разных процедурах одна и та же таблица имеет разный регистр имен (например: table и TABLE). К сожалению, я не мог предположить, что эту базу будут переносить на *nix сервер (Ubuntu), и о корректности имен даже не задумался. В винде (на локальной машине) все работает замечательно, а на убунту ругается на отсутствие таблицы.
Была мысль исправить все имена таблиц на нижний регистр, как в базе так и в процедурах, но возникла другая проблема, если через dbForge пытаюсь посмотреть текст процедур, выдает ошибку - "Не удалось получить текст SQL для объекта 'GetMan' / Возможно, у вас недостаточно привилегий для получения метаданных данного объекта. ". Скорее всего процедуры не читаются из-за того, что в именах файлов разные регистры ('.frm' и '.MYI', '.MYD').
Так же есть мысль по поводу параметра lower_case_table_names. На локальной машине (win), он равен 2, а на nix-сервере - 0.
Как по вашему мнению решить эту проблему?
Переименовать все файлы на сервере в нижний регистр? Выставить lower_case_table_names на nix-сервере в 1, или сделать "все правильно" на локальной машине и уже загрузить базу заново? База большая, около 70Гб, поэтому рисковать не хотелось бы. И так прилично накосячил из-за невнимательности

Спасибо.