centos 7でlampを構築する過程でmysqlをインストールしrootパスワードを構成しようとした問題

1737 ワード

まずyum install mysqlをインストールした結果、仮想マシンをインストールするときにmariadbがデフォルトでインストールされており、mariadbはmysqlの機能と操作に互換性があることが分かった.mysqlをインストールする必要はありません
またps-ef|grep mariaを使用してサービスが開始されたことを発見
root      4512  2261  0 22:54 pts/0    00:00:00 grep --color=auto maria

だからmysqlに直接パスワード設定コマンドmysql_secure_Installation結果が出るとすぐにエラーを報告します
Enter current password for root (enter for none): 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

ディレクトリ/etc/lib/mysqlに入るとmysqlが欠けていることがわかります.sockファイルでディレクトリ全体が空です
mysqlのデータベース格納ディレクトリのデフォルトは/var/lib/mysqlで、このディレクトリもmysqlと定義されているルートディレクトリは完全に空のディレクトリで、私はあまり合理的ではないと感じてmariadbサービスコマンドsystemctl restart mariadbを再起動しました.service
そしてls/etc/lib/mysql
[root@localhost ~]# cd /var/lib/mysql/
[root@localhost mysql]# ls
[root@localhost mysql]# systemctl restart mariadb.service
[root@localhost mysql]# ls
aria_log.00000001  ib_logfile1                mysql-bin.000001  mysql.sock
aria_log_control   localhost.localdomain.err  mysql-bin.000002  performance_schema
ibdata1            localhost.localdomain.pid  mysql-bin.000003  test
ib_logfile0        mysql                      mysql-bin.index

あるべきmysql.sockファイルがあります
では、mysqlのパスワードmysqlを再構成します.secure_installation
次の手順でmysqlのrootリモートログインをついでに構成します(もちろんこれは自分の仮想マシン上なので特にセキュリティの問題を重視する必要はありません)
Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] n

その他必要に応じて構成が完了したらmariadbを再起動します
またapacheのhttpdサービスやphpのインストールにはほとんど問題がなくcentos 6.5時ほぼ一致