CentOS下MySQL安装配置过程详解(一)

2014-11-24 17:31:01 · 作者: · 浏览: 0

[root@sample ~]# yum -y install mysql-server ← 安装MySQL


然后,安装PHP访问MySQL数据库的工具“php-mysql”


[root@sample ~]# yum -y install php-mysql ← 安装php-mysql



2、配置MySQL


[root@sample ~]# vi /etc/my.cnf ← 编辑MySQL的配置文件


#定位到这里


[client]
#password = your_password
port = 3306
socket = /tmp/mysql.sock
default-character-set = utf8


[mysqld]


datadir=/var/lib/mysql


socket=/var/lib/mysql/mysql.sock


# Default to using old password format for compatibility with mysql 3.x


# clients (those using the mysqlclient10 compatibility package).


old_passwords=1 ← 找到这一行,在这一行的下面添加新的规则,让MySQL的默认编码 为UTF-8(假若找不到,就在本文件到底添加)


default-character-set = utf8 ← 添加这一行


启动MySQL服务,进入MySQL里面运行status查看是否已经全部都是支持了utf8,并让MySQL在系统重新启动后随系统自动启动。


[root@sample ~]# chkconfig mysqld on ← 设置MySQL服务随系统启动自启动


[root@sample ~]# chkconfig --list mysqld ← 确认MySQL自启动


mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← 如果2--5为on的状态就OK


[root@sample ~]# service mysqld start ← 启动MySQL服务



3、设置root用户密码及相关优化配置


MySQL在刚刚被安装的时候,它的root用户是没有被设置密码的,首先来设置MySQL的root密码。


[root@sample ~]# mysql -u root ← 用root用户登录MySQL服务器


Welcome to the MySQL monitor. Commands end with ; or \g.


Your MySQL connection id is 2 to server version: 4.1.20


Type 'help;' or '\h' for help. Type '\c' to clear the buffer.


mysql> select user,host,password from mysql.user; ← 查看用户信息


+------+------------------------------+---------------+


| user | host | password |


+------+------------------------------+---------------+


| root | localhost | | ← root密码为空


| root | sample.centospub.com | | ← root密码为空


| | sample.centospub.com | |


| | localhost | |


+------+------------------------------+---------------+


4 rows in set (0.00 sec)


mysql> set password for root@localhost=password('yournewpwd'); ← 设置root密码


Query OK, 0 rows affected (0.01 sec)


mysql> set password for root@'sample.centospub.com'=password('newID'); ← 设置root密码


Query OK, 0 rows affected (0.01 sec)


mysql> select user,host,password from mysql.user; ← 查看用户信息


+------+--------------------------------+--------------------------+


| user | host | password |


+------+--------------------------------+--------------------------+


| root | localhost | 19b68057189b027f | ← root密码被设置,已经加密


| root | sample.centospub.com | 19b68057189b027f | ← root密码被设置,已经加密


| | sample.centospub.com | |


| | localhost | |


+------+--------------------------------+--------------------------+


4 rows in set (0.01 sec)


mysql> exit ← 退出MySQL服务器


Bye


然后,测试一下root密码有没有生效。


[root@sample ~]# mysql -u root ← 通过空密码用root登录


ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) ← 出现此错误信息说明密码设置成功


[root@localhost ~] # mysql -u root -h sample.centospub.com ← 通过空密码用root登录


ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) ← 出现此错误信息说明密码设置成功


[root@sample ~]# mysql -u root -p ← 通过密码用root登录


Enter password: ← 在这里输入密码


Welcome to the MySQL monitor. Commands end with ; or \g. ← 确认用密码能够成功登录


Your MySQL connection id is 5 to server version: 4.1.20


Type 'help;' or '\h' for help. Type '\c' to clear the buffer.


mysql> exit


[root@sample ~]# mysql -u root -h sample.centospub.com -p ← 通过密码用root登录


Enter password: ← 在这里输入密码


Welcome to the MySQL monitor. Commands end with ; or \g. ← 确认用密码能够成功登录


Your MySQL connection id is 6 to server version: 4.1.20


Type 'help;' or '\h' for help. Type '\c' to clear the buffer.


mysql> exit ← 退出MySQL服务器


Bye



删除匿名用户


在MySQL刚刚被安装后,存在用户名、密码为空的用户。这使得数据库服务器有无需密码被登录的可能性,为消除隐患,将匿名用户删除。


[root@sample ~]# mysql -u root -p ← 通过密码用root登录


Enter passwor