Ввод вашего пароля в команду, как правило, плохая идея (люди могут прочитать его через плечо, он, вероятно, будет сохранен в вашей истории оболочки и т. Д.), Но вы можете поместить свои учетные данные в файл. Если присвоить файлу имя, начинающееся с .
, он будет скрыт, что также более безопасно.
# .db.conf
[client]
database=myDatabase
user=myUserName
password=myPassWord
Убедитесь, что только вы можете прочитать файл:
chmod 600 .db.conf
Затем вызовите MySQL так:
mysql --defaults-extra-file=.db.conf -e "UPDATE database SET field1 = '1' WHERE id = 1111;"
или
echo "UPDATE database SET field1 = '1' WHERE id = 1111;" | mysql --defaults-extra-file=.db.conf
Обратите внимание, что --defaults-extra-file
должен быть первым параметром, указанным для mysql
, в противном случае он выходит из себя.