安裝完mysql-server
會提示可以運行mysql_secure_installation。運行mysql_secure_installation會執行幾個設置:
a)爲root用戶設置密碼
b)刪除匿名賬號
c)取消root用戶遠程登錄
d)刪除test庫和對test庫的訪問權限
e)刷新授權表使修改生效
通過這幾項的設置能夠提高mysql庫的安全。建議生產環境中mysql安裝這完成後一定要運行一次mysql_secure_installation,詳細步驟請參看下面的命令:
代碼如下:
[root@server1 ~]#
mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS
RECOMMENDED FOR ALL MySQL
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP
CAREFULLY!
In order to log into MySQL to secure it, we'll need the
current
password for the root user. If you've just installed MySQL,
and
you haven't set the root password yet, the password will be blank,
so
you should just press enter here.
Enter current password for root (enter for
none):<–初次運行直接回車
OK, successfully used
password, moving on…
Setting the root password ensures that nobody can log
into the MySQL
root user without the proper authorisation.
Set root
password? [Y/n] <–
是否設置root用戶密碼,輸入y並回車或直接回車
New password: <– 設置root用戶的密碼
Re-enter new password: <– 再輸入一次你設置的密碼
Password updated
successfully!
Reloading privilege tables..
… Success!
By default, a
MySQL installation has an anonymous user, allowing anyone
to log into MySQL
without having to have a user account created for
them. This is intended only
for testing, and to make the installation
go a bit smoother. You should
remove them before moving into a
production environment.
Remove anonymous
users? [Y/n] <–
是否刪除匿名用戶,生產環境建議刪除,所以直接回車
… Success!
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] <–是否禁止root遠程登錄,根據自己的需求選擇Y/n並回車,建議禁止
… Success!
By default, MySQL
comes with a database named 'test' that anyone can
access. This is also
intended only for testing, and should be removed
before moving into a
production environment.
Remove test database and access to it? [Y/n] <– 是否刪除test數據庫,直接回車
- Dropping test
database…
… Success!
- Removing privileges on test database…
…
Success!
Reloading the privilege tables will ensure that all changes made so
far
will take effect immediately.
Reload privilege tables now? [Y/n] <– 是否重新加載權限表,直接回車
… Success!
Cleaning
up…
All done! If you've completed all of the above steps, your
MySQL
installation should now be secure.
Thanks for using
MySQL!
[root@server1 ~]#