我安裝了 mysql-server 並且它沒有要求 root 密碼,現在我無法以 root 身分登入 MySQL。另外,我注意到,該指令「mysql_secure_installation」想要保護 MariaDB 資料庫根帳戶,而不是 MySQL 帳戶。我已經嘗試了好幾天,但沒有人可以幫助我。解決方案可能是什麼? (Debian 9)
答案1
初始安裝後,您應該運行mysql_secure_installation
為 root 帳戶設定密碼。https://mariadb.com/kb/en/mariadb/mysql_secure_installation/
MariaDB Server 是 Debian 9 中 MySQL 的預設分支。
https://mariadb.com/resources/blog/mariadb-server-default-debian-9
在 Debian 9「Stretch」中,該
mysql-server
軟體包依賴一個名為 的新軟體包default-mysql-server
。這個包又依賴mariadb-server-10.1
.[..] 當您
mysql-server
在 Stretch 上安裝該軟體包時,您將獲得 MariaDB 10.1 而不是 MySQL,就像以前版本的 Debian 一樣。請注意,這mysql-server
只是一個空的過渡元包,鼓勵用戶使用實際的套件安裝 MariaDBmariadb-server
。
來源:https://mariadb.com/kb/en/library/moving-from-mysql-to-mariadb-in-debian-9/
答案2
如果您發現某些 MySQL/MariaDB 命令在沒有任何密碼提示的情況下運行,想查看它在幕後使用的密碼,Debian 將生成的密碼儲存在/etc/mysql/debian.cnf
/etc/mysql# cat debian.cnf
# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host = localhost
user = debian-sys-maint
password = <random string>
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host = localhost
user = debian-sys-maint
password = <random string>
socket = /var/run/mysqld/mysqld.sock
basedir = /usr
答案3
我遇到了同樣的問題,導致我無法存取 mysql,所有mysql_secure_installation
運行後使用的答案都sudo apt install mysql-server
不起作用。這是有效的
- 去官方mysql安裝指南並逐行跟踪
- 您需要從以下位置下載 .deb 文件這裡配置你要安裝的mysql版本以及其他配置
- 配置全部完成後,執行
sudo apt-get update && sudo apt-get install mysql-server
這次,系統會要求您輸入密碼。
希望能幫助你。乾杯!