mysql5.7 安装后无法设置密码
PHP中文网
PHP中文网 2017-04-17 16:43:20
0
3
833

版本以及操作系统:Server version: 5.7.17-0ubuntu0.16.04.1 (Ubuntu-server)

尝试直接apt-get install mysql-server,安装过程中弹出让输入密码的框都直接回车。

安装好之后,输入mysql可以直接登陆数据库,尝试用mysqladmin -u root password "password"``来设置密码,弹出两条警告:

$ mysqladmin -u root password "123"
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.

再次尝试登陆,还是可以直接输入mysql登陆(尝试过重启数据库)。

第二次尝试登陆进数据库,使用update mysql.user set authentication_string=PASSWORD('123123') where user='root';设置,然后刷新权限flush privileges;

再次尝试登陆,还是不用输任何密码就可以登陆成功(有重启数据库)

那么,现在问题来了:

我要怎样才能成功的给数据库设个密码呢?(除了在安装时弹出框里输入)

PHP中文网
PHP中文网

认证高级PHP讲师

全員に返信(3)
Ty80

公式ドキュメントにはここにヒントが記載されています。ヒントに従って読むことができます
https://dev.mysql.com/doc/mys...
MySQL 5.7 のみ: MySQL 5.7 の初期起動中サーバーのデータ ディレクトリが空であると仮定すると、次のような状況が表示されます:
サーバーは初期化されました。
SSL 証明書とキー ファイルはデータ ディレクトリに生成されます。
validate_password プラグインがインストールされ、有効になっています。
'root'@'localhost' はスーパーユーザー アカウントを作成します。スーパーユーザーのパスワードが設定され、エラー ログ ファイルに保存されます。これを表示するには、次のコマンドを使用します:
shell> sudo grep 'temporary password' /var/log/mysqld.log
生成された一時パスワードでログインし、スーパーユーザー アカウントのカスタム パスワードを設定して、root パスワードをできるだけ早く変更します。 ;
mysql -uroot -pmysql>
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
MySQL の validate_password プラグインはデフォルトでインストールされます。これには、パスワードに少なくとも 1 つの大文字、1 つの小文字、1 つの数字、および 1 つの特殊文字が含まれており、パスワードの合計の長さが少なくとも 8 文字であることが必要です。

いいねを押す +0
PHPzhong

mysql_secure_installion を使用してみる

いいねを押す +0
左手右手慢动作

アカウントには空のアカウントが存在するはずですが、この空のアカウントを削除またはパスワードを設定していません。
mysql.user where user='';flush権限;
または
から削除してください。 mysql を更新します。ユーザー設定の認証文字列=PASSWORD('123123');フラッシュ権限;

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート