我在ubuntu服务器上安装了mysql而没有指定密码。当我做的时候
mysql -u root -p
它会提示输入密码而不提供任何输入我只需点击输入就可以了。
现在我需要使用cron job对数据库执行一些操作。我的cron作业不起作用,因为mysql提示输入密码。我试着做了
mysql -u root -p'' my_database
但这也不起作用。
有什么建议吗?
答案 0 :(得分:70)
像这样mysql -u root --password="" dbname
答案 1 :(得分:20)
尽量不要求mysql提示输入密码'mysql -u myuser'。我建议您创建一个只具有所需权限的帐户来执行此操作。还限制其对localhost的访问权限。在root上输入密码。
答案 2 :(得分:12)
我在ubuntu服务器上安装了mysql而没有指定密码。什么时候 我做了
mysql -u root -p
-p
会显示密码提示。如果您没有密码,那么您不希望这样做。
只需写下:
mysql -u root
为了爱上帝,请在该帐户上获取密码!
答案 3 :(得分:3)
要在命令中传递密码,请使用-p$PASSWORD
。在以下示例中,用户/密码为root / root:
mysql -proot -D my-db -u root -h 127.0.0.1 -e "select * from my_table"
重要提示:请注意,-p
和-proot
中的密码之间没有空格
答案 4 :(得分:1)
检查MySQL文档以了解如何重置密码,因为我发现无法输入密码。您可以使用以下内容:http://dev.mysql.com/doc/mysql-windows-excerpt/5.0/en/resetting-permissions-windows.html 这表明您必须使用以下查询创建文件:
UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
FLUSH PRIVILEGES;
然后使用--init-file参数启动mysqld服务(有关此内容的详细信息,请参阅文档)。这应该重置root密码。
答案 5 :(得分:0)
为什么不为root指定密码?出于安全原因,您的脚本可以正常工作。
答案 6 :(得分:0)
Mysql的“root”帐户应该有密码;否则,您机器上拥有帐户的任何人都可以完全访问数据库。
如果您需要更合理的身份验证选项,我建议使用Postgres。