我的机器上有一个只应该运行 mysql 的用户。有什么方法可以将该用户的外壳设置为 mysql 并使用密码和用户名登录?
我知道如何将 shell 更改为 mysql 二进制文件
usermod -s /usr/bin/mysql
这确实有效,只是我无法在程序中提供用户名/密码。通常用户/密码被给出为
mysql -u $USER -p
我无法为 shell 提供参数,如
usermod -s "/usr/bin/mysql -u $USER -p" # Does not work!
同样使用简单的 shell 脚本作为 shell 也不起作用:
#!/bin/sh # mysqlShell
/usr/bin/mysql -u $USER -p
----
usermod -s mysqlShell # does not work
那么如何为我用作用户 shell 的程序提供参数呢?
感谢汤姆雷格纳,我可以找到一个使用 .my.cnf 的解决方案,其中包含
[client]
host=localhost
user=$user
password=$pass
disable-auto-rehash
其中mysql设置为shell。我仍然想手动输入密码,但这是我找到的最好的。