Я пишу сценарий для подключения сервера mysql на EC2 к RDS, обычно я делаю это:
mysql -h $RDS_ENDPOINT -P 3306 --user=$RDS_MYSQL_USERNAME --password=$RDS_MYSQL_PASSWORD
а потом exit
Я просто хочу установить соединение, больше ничего
Теперь мне нужно поместить эти команды в сценарий, чтобы автоматизировать этот процесс, не вводя команду exit. У меня 2 вопроса: mysql
не обнаруживается при запуске bash; и как мне выйти из mysql из скрипта?
Попробуйте установить клиент mysql. Выберите то, что подходит вашему текущему дистрибутиву Linux.
sudo apt-get install mysql-client
или
yum install mysql
Просто:
#!/bin/bash
RDS_MYSQL_ENDPOINT="your-endpoint-goes-here";
RDS_MYSQL_USER="your-username-goes-here";
RDS_MYSQL_PASS="your-password-goes-here";
RDS_MYSQL_BASE="your-database-name-goes here";
mysql -h $RDS_MYSQL_ENDPOINT -u $RDS_MYSQL_USER -p$RDS_MYSQL_PASS -D $RDS_MYSQL_BASE -e 'quit';
if [[ $? -eq 0 ]]; then
echo "MySQL connection: OK";
else
echo "MySQL connection: Fail";
fi;
Теперь проблема, с которой вы столкнулись, заключается в том, что у вас, вероятно, не установлен клиент MySQL. Чтобы сделать это в системе Ubuntu / Debian, просто введите:
sudo apt-get install -y mysql-client
И вы сделали.