Назад | Перейти на главную страницу

Выполнение удаленного SQL-запроса через SSH

Я пытаюсь выполнить запрос MySQL на удаленном сервере через ssh. Вот моя команда:

ssh -p 2020 mysql@mysql1.local.mydomain.com 'mysql --compress --secure-auth --database operations --execute \'INSERT INTO `ops`.`accounts` (`alias`, `id`, `web_server`, `mysql_server`) VALUES (\'thisisatest\', \'act_67vhVnS30bV\', \'web2\', \'mysql1\');\''

Это должно быть правильно, но я получаю:

bash: syntax error near unexpected token `('

Любые идеи?

Вы можете переписать команду так:

ssh -p 2020 mysql@mysql1.local.mydomain.com "mysql --compress --secure-auth --database operations --execute 'INSERT INTO \` ops \ `. \` accounts \ `(\` alias \ ` , \ `id \`, \ `web_server \`, \ `mysql_server \`) VALUES ('thisisatest', 'act_67vhVnS30bV', 'web2', 'mysql1'); '"

Используйте двойные кавычки для полной команды SSH. Одиночные кавычки не требуют экранирования. Вам нужно избегать обратных кавычек \ `.