Как правильно запросить базу данных mysql из скрипта bash? - PullRequest
0 голосов
/ 19 февраля 2020

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

#!/bin/bash

username="useursur"
passworduser="dnfndfvjdngdg"

sudo mysql -u $username -p$passworduser <<EOF
    CREATE USER 'wpdb'@'localhost' IDENTIFIED BY 'fsafdasdfsadfasdf';
    CREATE DATABASE wpdb;
    GRANT ALL PRIVILEGES ON wpdb.* TO 'wpdb';
    FLUSH PRIVILEGES;
EOF

Я изменил команду на

sudo mysql -u $username -p$passworduser -e "CREATE USER 'wpdb'@'localhost' IDENTIFIED BY 'fsafdasdfsadfasdf';CREATE DATABASE wpdb;GRANT ALL PRIVILEGES ON wpdb.* TO 'wpdb';FLUSH PRIVILEGES;"

В результате я получаю эту ошибку:

mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1133 (42000) at line 1: Can't find any matching row in the user table

1 Ответ

0 голосов
/ 19 февраля 2020

Вам необходимо указать пользователя и хост, когда вы предоставляете.

GRANT ALL PRIVILEGES ON wpdb.* TO 'wpdb';

Должно быть:

GRANT ALL PRIVILEGES ON wpdb.* TO 'wpdb'@'localhost';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...