Некорректный экспорт базы данных 2.X

 
Посетитель
no avatar
Сообщений: 11
Здравствуйте!
При попытке перенести базу данных с хостинга на локалку получил следующую ошибку:

#1054 - Неизвестный столбец 'is_private' в 'field list'

Вот что у меня в дампе:

Структура таблицы
Код PHP:
  1. DROP TABLE IF EXISTS `inst_activity`;
  2. CREATE TABLE `inst_activity` (
  3. `id` int(11) UNSIGNED NOT NULL,
  4. `type_id` int(11) UNSIGNED DEFAULT NULL,
  5. `user_id` int(11) UNSIGNED DEFAULT NULL,
  6. `group_id` int(11) UNSIGNED DEFAULT NULL,
  7. `subject_title` varchar(140) DEFAULT NULL,
  8. `subject_id` int(11) UNSIGNED DEFAULT NULL,
  9. `subject_url` varchar(250) DEFAULT NULL,
  10. `reply_url` varchar(250) DEFAULT NULL,
  11. `images` text DEFAULT NULL,
  12. `images_count` int(11) UNSIGNED DEFAULT NULL,
  13. `date_pub` timestamp NULL DEFAULT current_timestamp
  14. ) ;
  15.  
При попытке вставить данные, там уже больше столбцов.

Код PHP:
  1. INSERT INTO `inst_activity` (`id`, `type_id`, `user_id`, `group_id`, `subject_title`, `subject_id`, `subject_url`, `reply_url`, `images`, `images_count`, `date_pub`, `is_private`, `is_parent_hidden`, `is_pub`) VALUES ...
---
Из-за чего такое могло произойти?
Использую Ubuntu 16.04
MariaDB 10.3.13
phpMyAdmin 4.9.0.1 - в нем уже фиксил ошибки c count()
PHP: 7.2.22
- https://medium.com/@chaloemphonthipkasorn/%E0%B9%81%E0%B8%81%E0%B9%89-bug-phpmyadmin-php7-2-ubuntu-16-04-92b287090b01
- https://medium.com/@chaloemphonthipkasorn/fix-bug-phpmyadmin-sql-lib-php-php7-2-ubuntu-16-04-836049630a40

---
Самое интересное, что с локалки я смог экспортировать и выгрузить базу на сервер.
Это phpMyAdmin 4.9.0.1 глюченный или как понять?
Посетитель
small user social cms
Почетный донор проекта
Сообщений: 93
Так у вас дамп какой версии?
Давайте посмотрим на оригинальную таблицу в последней:
https://github.com/instantsoft/icms2/blob/master/install/languages/ru/base.sql#L50
Не знаю полной ситуации, можно добавить поля. У вас поля, если смотреть на хостинге эти в базе есть?
Редактировалось: 1 раз (Последний: 13 февраля 2020 в 18:54)
Реклама
cms
Посетитель
no avatar
Сообщений: 11
@Evg:

Так у вас дамп какой версии?

Вы имеете ввиду, что утилита mysqldump типа как отдельный демон. И он может не подходит для текущей версии MySQL-сервера?
Тото-же я не понимаю, почему не надо сначала подключиться к mysql-серверу, а потом уже выполнять какие-то запросы.

---
@Evg:

Давайте посмотрим на оригинальную таблицу в последней:
https://github.com/instantsoft/icms2/blob/master/install/languages/ru/base.sql#L50
Не знаю полной ситуации, можно добавить поля. У вас поля, если смотреть на хостинге эти в базе есть?
Поля в самой базе есть. И данные в них есть.

---
Для себя решил этот вопрос, воспользовавшись https://github.com/ifsnop/mysqldump-php
Но хотелось бы также разобраться, как это сделать с помощью инструментов самого сервера.
И что интересно, у меня команда не работает
Редактировалось: 1 раз (Последний: 14 февраля 2020 в 16:22)
Посетитель
no avatar
Сообщений: 11
Код PHP:
  1. mysqldump -u [username] -p [database-you-want-to-dump] > [path-to-place-data-dump]
Вот это тоже сработало для экспорта таблиц без их содержимого, но пришлось сменить пароль для пользователя. Потому что когда пароль содержал восклицательный знак, то выходила ошибка:
-bash: !***: event not found

Пробовал \! - не помогало. Тогда я использовать php-скрипт, и получилось экспортировать корректно. И потом уже попробовал все-таки добиться результата из командной строки...
Редактировалось: 1 раз (Последний: 14 февраля 2020 в 16:36)
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.