MySQL и терминал: проблема с разрешениями

224
MJV

Я не могу выдвинуть информацию в свою базу данных через терминал. Логика MySQL правильная и действует так, будто дамп был успешным. Однако данные никогда не попадают в БД. Я даже вошел в систему как root, у которого есть все разрешения на сервере и внутри MySQL.

(Изменить) Моя команда:

 mysqldump -u root -p DBNAME db_table < /home/MJV/.../.../db_table_backup.sql 

Это дает:

-- Dump completed on 2016-07-15 15:22:19 

Любой совет, как поступить? Спасибо!

Изменить: JakeGould сказал мне, чтобы запустить следующую команду:

mysql -uroot -p[password] dbname db_table </home/MJV/.../.../db_table_backup.sql 

Любая выкидываемая справочная информация, такая как:

mysql Ver 14.14 Distrib 5.5.49, для debian-linux-gnu (x86_64) с использованием readline 6.3 Copyright (c) 2000, 2016, Oracle и / или его дочерние компании. Все права защищены.

Oracle является зарегистрированным товарным знаком корпорации Oracle и / или ее филиалов. Другие наименования могут быть торговыми марками их владельцев.

Какие-нибудь еще уловки, которые я мог бы пропустить?

0

2 ответа на вопрос

0
JakeGould

Ваша команда:

mysqldump -u root -p DBNAME db_table < /home/MJV/.../.../db_table_backup.sql 

mysqldumpэто просто утилита, которая будет дамп базы данных MySQL. Вы никогда не сможете импортировать данные в базу данных MySQL, используя mysqldump. Вместо этого вы должны просто использовать обычную mysqlкоманду, например:

mysql -uroot -p[password] db_table </home/MJV/.../.../db_table_backup.sql 

Конечно, замените [password]ваш реальный пароль, но общий синтаксис - это то, что вы ищете.

Привет, JakeGould, я попробовал то, что ты предложил, и он выдал «справочную» информацию для Oracle MySQL, такую ​​как команды. Это не проходит? Еще совет? MJV 7 лет назад 0
Когда вы добавили пароль к команде, вы делали это напрямую (без пробелов) между `-p` и паролем, подобным этому` -p [пароль] `, или вы просто добавляли пробел между` -p` и пароль вроде этого `-p [пароль]`? Команда должна работать * без пробела * следующим образом: `-p [пароль]`. Подробнее о том, как это сделать [об этом ответе о переполнении стека] (http://stackoverflow.com/a/4546797/117259). JakeGould 7 лет назад 0
Это было без пробелов. Команда была немного от вас, но она работала. :) Спасибо, ДжейкГолд! MJV 7 лет назад 0
0
MJV

Команда, которая работала, была немного от JakeGould's:

mysql -u root -p DBNAME < /home/MJV/.../.../db_table_backup.sql 

Если кто-то может прокомментировать разницу между тем, как они выполняются, я уверен, что новички в Linux будут благодарны за описание.

Спасибо всем!

Похожие вопросы