相关疑难解决方法(0)

使用终端内的mysql抑制警告消息,但用bash脚本编写密码

当我尝试从终端内的MySQL上运行以下命令时:

mysql -u $user -p$password -e "statement"
Run Code Online (Sandbox Code Playgroud)

执行按预期工作,但它总是发出警告:

警告:在命令行界面上使用密码可能不安全.

但是,我必须使用$password存储我的密码的环境变量()来执行上面的声明,因为我想在终端内的bash脚本中迭代地运行命令,我绝对不喜欢等待提示出现的想法并强迫我在一个脚本中输入50或100次密码.所以这是我的问题:

  • 抑制警告是否可行?该命令正如我所说的那样正常工作,但当我循环并运行命令50或100次时,窗口变得非常混乱.

  • 我是否应该遵守警告信息并且不在我的脚本中写入密码?如果是这种情况,那么每次提示迫使我这样做时,我是否必须输入密码?

跑步man mysql没有帮助,只说

--show-warnings
如果有任何声明,则会在每个声明后显示警告.此选项适用于交互式和批处理模式.

如果我没有遗漏某些东西,并且没有提及如何关闭功能.

我在OS X 10.9.1 Mavericks上,并使用自制的MySQL 5.6.

mysql bash shell

240
推荐指数
13
解决办法
26万
查看次数

Mysql(MariaDB 10.0.29):设置root密码,但是仍然可以在不问密码的情况下登录?

我想通过设置root密码来保护mysql.我成功重置了root密码:

MariaDB [(none)]> select Host, User, Password from mysql.user;
+-----------+------+-------------------------------------------+
| Host      | User | Password                                  |
+-----------+------+-------------------------------------------+
| localhost | root | *58319282EAB9E38D49CA25844B73DA62C80C2ABC |
+-----------+------+-------------------------------------------+
1 row in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)

但是,在刷新权限后,重新启动Mysql,我仍然可以在不输入密码的情况下登录mysql(在本地主机上).

root@myhost:/# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 10.0.29-MariaDB SLE 12 SP1 package

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the …
Run Code Online (Sandbox Code Playgroud)

mysql passwords login mariadb

30
推荐指数
3
解决办法
2万
查看次数

标签 统计

mysql ×2

bash ×1

login ×1

mariadb ×1

passwords ×1

shell ×1