14,953
edits
| Line 186: | Line 186: | ||
== 訪問和認證錯誤 == | == 訪問和認證錯誤 == | ||
=== [Warning] Using a password on the command line interface can be insecure === | |||
問題描述: | |||
使用 bash 命令匯出或匯入 MySQL 資料庫時,可能會遇到以下警告:[警告] 在命令行介面上使用密碼可能不安全。 | |||
<pre> | |||
mysql: [Warning] Using a password on the command line interface can be insecure. | |||
or | |||
mysqldump: [Warning] Using a password on the command line interface can be insecure. | |||
</pre> | |||
這通常發生在使用如下命令時: | |||
<pre> | |||
mysqldump -u USERNAME -p -h 127.0.0.1 --default-character-set=utf8 DATABASE > DATABASE.sql | |||
</pre> | |||
解決方案:要解決此警告並提高安全性,請按照以下步驟操作: | |||
# 使用 [https://dev.mysql.com/doc/refman/8.4/en/mysql-config-editor.html mysql_config_editor] 設定登入路徑 (login path):{{kbd | key=<nowiki>mysql_config_editor set --login-path=local --host=localhost --user=root --password</nowiki>}} | |||
# 匯出或匯入 MySQL 資料庫時使用登入路徑 (1) 匯出時:{{kbd | key=<nowiki>mysqldump --login-path=local --default-character-set=utf8 資料庫名稱 > 資料庫名稱.sql</nowiki>}} (2) 匯入時:{{kbd | key=<nowiki>pv 資料庫名稱.sql.gz | gunzip | mysql --login-path=local --default_character_set utf8 --force 資料庫名稱</nowiki>}} | |||
# 查看所有已設定的登入路徑 {{kbd | key=<nowiki>mysql_config_editor print --all</nowiki>}} | |||
透過使用登入路徑,可以避免在命令行中暴露密碼,解決安全警告。 | |||
=== 錯誤 1044 (42000): 拒絕使用者 'USER'@'localhost' 存取資料庫 'DATABASE_NAME' === | === 錯誤 1044 (42000): 拒絕使用者 'USER'@'localhost' 存取資料庫 'DATABASE_NAME' === | ||
訊息:{{kbd | key=<nowiki>錯誤 1044 (42000): 拒絕使用者 'USER'@'localhost' 存取資料庫 'DATABASE_NAME'</nowiki>}} | 訊息:{{kbd | key=<nowiki>錯誤 1044 (42000): 拒絕使用者 'USER'@'localhost' 存取資料庫 'DATABASE_NAME'</nowiki>}} | ||