如何使用带有密码的 rake 数据库命令
How to use rake database commands with password
大家好我正在尝试使用命令-
rake db:migrate
但我在终端中收到此反馈 -
rake aborted!
Mysql2::Error: Access denied for user 'root'@'localhost' (using password: NO)
我正在寻找使用命令时请求密码的东西,例如
rake db:migrate -p
但这对我不起作用我尝试了各种方法,比如将它放在 rake 之前,就在 rake 之后,并使用 -u 和 root。
我的问题是如何让这个命令在尝试访问数据库时也提示输入密码,这样它就不会给我这样的错误?
我会查看您的 config/database.yml
文件以确保您的数据库用户名和密码设置正确。
编辑:
我还发现了一个有用的 link 它可以帮助您不将密码以纯文本形式存储在 database.yml
文件中,而是将其存储为 ENV 变量,然后可以在访问数据库之前使用该变量进行定义终端。
说明在这里:
Securely providing the database password in a Rails app
前往app/config/database.yml
该文件负责各种环境的数据库连接配置。前任。开发、生产等
例如。
development:
adapter: mysql2
encoding: utf8
database: #database name.
username: # mysql user name
password: # mysql Password
host : # from where databases you asses from local or remote
remote you specify the remote server ip address.
您需要正确设置密码。
大家好我正在尝试使用命令-
rake db:migrate
但我在终端中收到此反馈 -
rake aborted!
Mysql2::Error: Access denied for user 'root'@'localhost' (using password: NO)
我正在寻找使用命令时请求密码的东西,例如
rake db:migrate -p
但这对我不起作用我尝试了各种方法,比如将它放在 rake 之前,就在 rake 之后,并使用 -u 和 root。
我的问题是如何让这个命令在尝试访问数据库时也提示输入密码,这样它就不会给我这样的错误?
我会查看您的 config/database.yml
文件以确保您的数据库用户名和密码设置正确。
编辑:
我还发现了一个有用的 link 它可以帮助您不将密码以纯文本形式存储在 database.yml
文件中,而是将其存储为 ENV 变量,然后可以在访问数据库之前使用该变量进行定义终端。
说明在这里:
Securely providing the database password in a Rails app
前往app/config/database.yml 该文件负责各种环境的数据库连接配置。前任。开发、生产等
例如。
development:
adapter: mysql2
encoding: utf8
database: #database name.
username: # mysql user name
password: # mysql Password
host : # from where databases you asses from local or remote
remote you specify the remote server ip address.
您需要正确设置密码。