[root@sample ~]# yum -y install mysql-server ← 安裝MySQL
配置MySQL
[root@sample ~]#vim /etc/my.cnf ← 編輯MySQL的配置文件
[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 ← 找到這一行,在這一行的下面添加新的規(guī)則,讓MySQL的默認(rèn)編碼為UTF-8
default-character-set = utf8 ← 添加這一行
然后在配置文件的文尾填加如下語句:
[mysql]
default-character-set = utf8
啟動MySQL服務(wù)
[root@sample ~]# chkconfig mysqld on ← 設(shè)置MySQL服務(wù)隨系統(tǒng)啟動自啟動
[root@sample ~]# chkconfig --list mysqld ← 確認(rèn)MySQL自啟動
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← 如果2--5為on的狀態(tài)就OK
[root@sample ~]#/etc/rc.d/init.d/mysqld start ← 啟動MySQL服務(wù)
Initializing MySQL database: [ OK ]
Starting MySQL: [ OK ]
MySQL初始環(huán)境設(shè)定
[1]為MySQL的root用戶設(shè)置密碼
MySQL在剛剛被安裝的時候,它的root用戶是沒有被設(shè)置密碼的。首先來設(shè)置MySQL的root密碼。
[root@sample ~]# mysql -u root ← 用root用戶登錄MySQL服務(wù)器
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 | |
|root | % |XXX |
| | | |
+------+------------------------------+---------------+
4 rows in set (0.00 sec)
mysql> set password for root@localhost=password('在這里填入root密碼'); ← 設(shè)置root密碼
Query OK, 0 rows affected (0.01 sec)
mysql> set password for root@'sample.centospub.com'=password('在這里填入root密碼'); ← 設(shè)置root密碼
Query OK, 0 rows affected (0.01 sec)只有設(shè)置了這個才可以,才可以通過數(shù)據(jù)庫來安裝網(wǎng)址
mysql> set password for root@'xxx'=password('xxx'); ← 設(shè)置root密碼
Query OK, 0 rows affected (0.01 sec)
mysql> select user,host,password from mysql.user; ← 查看用戶信息
+------+--------------------------------+--------------------------+
| user | host | password |
+------+--------------------------------+--------------------------+
| root | localhost | 19b68057189b027f | ← root密碼被設(shè)置
| root | sample.centospub.com | 19b68057189b027f | ← root密碼被設(shè)置
| | sample.centospub.com | |
| | localhost | |
+------+--------------------------------+--------------------------+
4 rows in set (0.01 sec)
mysql> exit ← 退出MySQL服務(wù)器
Bye
然后,測試一下root密碼有沒有生效。
[root@sample ~]# mysql -u root ← 通過空密碼用root登錄
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) ← 出現(xiàn)此錯誤信息說明密碼設(shè)置成功
[root@localhost ~]# mysql -u root -h sample.centospub.com ← 通過空密碼用root登錄
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) ← 出現(xiàn)此錯誤信息說明密碼設(shè)置成功
[root@sample ~]#mysql -u root -p ← 通過密碼用root登錄
Enter password: ← 在這里輸入密碼
Welcome to the MySQL monitor. Commands end with ; or \g. ← 確認(rèn)用密碼能夠成功登錄
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
Bye
[root@sample ~]# mysql -u root -h sample.centospub.com -p ← 通過密碼用root登錄
Enter password: ← 在這里輸入密碼
Welcome to the MySQL monitor. Commands end with ; or \g. ← 確認(rèn)用密碼能夠成功登錄
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服務(wù)器
Bye
[2] 刪除匿名用戶
在MySQL剛剛被安裝后,存在用戶名、密碼為空的用戶。這使得數(shù)據(jù)庫服務(wù)器有無需密碼被登錄的可能性。為消除隱患,將匿名用戶刪除。
[root@sample ~]# mysql -u root -p ← 通過密碼用root登錄
Enter password: ← 在這里輸入密碼
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7 to server version: 4.1.20
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> select user,host from mysql.user; ← 查看用戶信息
+------+----------------------------+
| user | host |
+------+----------------------------+
| | localhost |
| root | localhost |
| | sample.centospub.com |
| root | sample.centospub.com |
+------+----------------------------+
4 rows in set (0.02 sec)
mysql> delete from mysql.user where user=''; ← 刪除匿名用戶
Query OK, 2 rows affected (0.17 sec)
mysql> select user,host from mysql.user; ← 查看用戶信息
+------+----------------------------+
| user | host |
+------+----------------------------+
| root | localhost |
| root | sample.centospub.com |
+------+----------------------------+
2 rows in set (0.00 sec)
mysql> exit ← 退出MySQL服務(wù)器
Bye
好了,下面都不是必須的了!
測試MySQL