《Mysql必讀在CentOS上MySQL數據庫服務器配置方法》要點:
本文介紹了Mysql必讀在CentOS上MySQL數據庫服務器配置方法,希望對您有用。如果有疑問,可以聯系我們。
無意中還找到了CentOS的專業論壇,記住:http://www.centospub.com
于是,開端的學習配置MYSQL學習
本次情況:MYSQL學習
CentOS系統,MYSQL學習
mysql-server(版本忘了,因為是使用yum安裝的)MYSQL學習
過程如下(轉載,根據本人安裝詳細要求,略加改動) :MYSQL學習
在提到網站構架的時候,我們經常能夠看到“LAMP”的說法,它就是“Linux + Apache + MySQL + PHP”. MySQL+PHP的協同成功案例已經很多了.比如國外的PHPBB,VBB,國內的Discuz!論壇等等程序,都是用PHP + MySQL實現的.和那些商務專用數據庫比起來,MySQL的功能和規模可能被好多人說的遜色一些,但對于我們個人來說,它的功能已經算是完備.而且,通 過Discuz!官方論壇上同時在線人數的數目,也可以證明MySQL的穩定性.
這里,介紹一下CentOS下MySQL數據庫服務器的構建辦法.?
MYSQL學習
首先,安裝MySQL.
MYSQL學習
[root@sample ~]#?yum -y install mysql-server ?← 安裝MySQL
Setting up Install Process Setting up repositories dag 100% |=========================| 1.1 kB 00:00 update 100% |=========================| 951 B 00:00 base 100% |=========================| 1.1 kB 00:00 addons 100% |=========================| 951 B 00:00 extras 100% |=========================| 1.1 kB 00:00 Reading repository metadata in from local files primary.xml.gz 100% |=========================| 106 kB 00:00 update : ################################################## 261/261 Added 5 new packages, deleted 0 old in 2.02 seconds Reducing Dag RPM Repository for Red Hat Enterprise Linux to included packages only Finished Parsing package install arguments Resolving Dependencies --> Populating transaction set with selected packages. Please wait. ---> Downloading header for mysql-server to pack into transaction set. mysql-server-4.1.20-1.RHE 100% |=========================| 29 kB 00:00 ---> Package mysql-server.i386 0:4.1.20-1.RHEL4.1 set to be updated --> Running transaction check --> Processing Dependency: libmysqlclient.so.14(libmysqlclient_14) for package: mysql-server --> Processing Dependency: perl-DBD-MySQL for package: mysql-server --> Processing Dependency: perl-DBI for package: mysql-server --> Processing Dependency: perl(DBI) for package: mysql-server --> Processing Dependency: mysql = 4.1.20-1.RHEL4.1 for package: mysql-server --> Processing Dependency: libmysqlclient.so.14 for package: mysql-server --> Processing Dependency: libmysqlclient_r.so.14(libmysqlclient_14) for package: mysql-server --> Processing Dependency: libmysqlclient_r.so.14 for package: mysql-server --> Restarting Dependency Resolution with new changes. --> Populating transaction set with selected packages. Please wait. ---> Downloading header for perl-DBD-MySQL to pack into transaction set. perl-DBD-MySQL-2.9004-3.1 100% |=========================| 5.4 kB 00:00 ---> Package perl-DBD-MySQL.i386 0:2.9004-3.1 set to be updated ---> Downloading header for mysql to pack into transaction set. mysql-4.1.20-1.RHEL4.1.i3 100% |=========================| 35 kB 00:00 ---> Package mysql.i386 0:4.1.20-1.RHEL4.1 set to be updated ---> Downloading header for perl-DBI to pack into transaction set. perl-DBI-1.40-8.i386.rpm 100% |=========================| 11 kB 00:00 ---> Package perl-DBI.i386 0:1.40-8 set to be updated --> Running transaction check
Dependencies ResolvedMYSQL學習
============================================================================= Package Arch Version Repository Size ============================================================================= Installing: mysql-server i386 4.1.20-1.RHEL4.1 update 9.8 M Installing for dependencies: mysql i386 4.1.20-1.RHEL4.1 update 2.9 M perl-DBD-MySQL i386 2.9004-3.1 base 111 k perl-DBI i386 1.40-8 base 466 kMYSQL學習
Transaction Summary ============================================================================= Install 4 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 13 M Downloading Packages: (1/4): perl-DBD-MySQL-2.9 100% |=========================| 111 kB 00:00 (2/4): mysql-server-4.1.2 100% |=========================| 9.8 MB 00:11 (3/4): mysql-4.1.20-1.RHE 100% |=========================| 2.9 MB 00:03 (4/4): perl-DBI-1.40-8.i3 100% |=========================| 466 kB 00:01 Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing: perl-DBI ######################### [1/4] Installing: mysql ######################### [2/4] Installing: perl-DBD-MySQL ######################### [3/4] Installing: mysql-server ######################### [4/4]MYSQL學習
Installed: mysql-server.i386 0:4.1.20-1.RHEL4.1 Dependency Installed: mysql.i386 0:4.1.20-1.RHEL4.1 perl-DBD-MySQL.i386 0:2.9004-3.1 perl-DBI.i386 0:1.40-8 Complete!
|
然后,安裝PHP拜訪MySQL數據庫的工具“php-mysql”.
MYSQL學習
[root@sample ~]#?yum -y install php-mysql ?← 安裝php-mysql
Setting up Install Process Setting up repositories Reading repository metadata in from local files Reducing Dag RPM Repository for Red Hat Enterprise Linux to included packages only Finished Parsing package install arguments Resolving Dependencies --> Populating transaction set with selected packages. Please wait. ---> Downloading header for php-mysql to pack into transaction set. php-mysql-4.3.9-3.15.i386 100% |=========================| 18 kB 00:00 ---> Package php-mysql.i386 0:4.3.9-3.15 set to be updated --> Running transaction check
Dependencies ResolvedMYSQL學習
============================================================================= Package Arch Version Repository Size ============================================================================= Installing: php-mysql i386 4.3.9-3.15 update 35 kMYSQL學習
Transaction Summary ============================================================================= Install 1 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 35 k Downloading Packages: (1/1): php-mysql-4.3.9-3. 100% |=========================| 35 kB 00:00 Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing: php-mysql ######################### [1/1]MYSQL學習
Installed: php-mysql.i386 0:4.3.9-3.15 Complete!
|
然后,設置裝備擺設MySQL.
MYSQL學習
[root@sample ~]#?vi /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 ?← 找到這一行,在這一行的下面添加新的規則,讓MySQL的默認編碼為UTF-8 default-character-set = utf8 ?← 添加這一行
然后在配置文件的文尾填加如下語句:
[mysql] default-character-set = utf8
|
啟動MySQL,并讓MySQL在系統重新啟動后隨系統自動啟動.
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 ~]#?/etc/rc.d/init.d/mysqld start ?← 啟動MySQL服務
Initializing MySQL database: [?OK?] Starting MySQL: [?OK?]
|
[1]為MySQL的root用戶設置暗碼
MySQL在剛剛被安裝的時候,它的root用戶是沒有被設置暗碼的.首先來設置MySQL的root暗碼.
MYSQL學習
[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學習
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學習
mysql>?set password for root@localhost=password('在這里填入root暗碼'); ?← 設置root暗碼 Query OK, 0 rows affected (0.01 sec)MYSQL學習
mysql>?set password for root@'sample.centospub.com'=password('在這里填入root暗碼'); ?← 設置root暗碼 Query OK, 0 rows affected (0.01 sec)MYSQL學習
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學習
mysql>?exit ?← 退出MySQL服務器 Bye
|
然后,測試一下root暗碼有沒有生效.
MYSQL學習
[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學習
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. ?← 確認用暗碼能夠成功登錄 Your MySQL connection id is 6 to server version: 4.1.20MYSQL學習
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.MYSQL學習
mysql>?exit ?← 退出MySQL服務器 Bye
|
[2] 刪除匿名用戶
在MySQL剛剛被安裝后,存在用戶名、暗碼為空的用戶.這使得數據庫服務器有無需暗碼被登錄的可能性.為消除隱患,將匿名用戶刪除.
MYSQL學習
[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學習
mysql>?select user,host from mysql.user; ?← 查看用戶信息 +------+----------------------------+ | user | host | +------+----------------------------+ | | localhost |MYSQL學習
| |?127.0.0.1 | | root | localhost | | | sample.centospub.com | | root | sample.centospub.com | +------+----------------------------+ 4 rows in set (0.02 sec)MYSQL學習
mysql>?delete from mysql.user where user=''; ?← 刪除匿名用戶 Query OK, 2 rows affected (0.17 sec)MYSQL學習
mysql>?select user,host from mysql.user; ?← 查看用戶信息 +------+----------------------------+ | user | host | +------+----------------------------+ | root | localhost | | root | sample.centospub.com | +------+----------------------------+ 2 rows in set (0.00 sec)MYSQL學習
mysql>?exit ?← 退出MySQL服務器 Bye
|
[3] 刪除測試用數據庫
在MySQL被安裝后,存在名為test的空數據庫,將它刪除.這里要注意的是,系統默認的還有一個名為mysql的數據庫,它用于系統治理,所以請不要刪除.
MYSQL學習
[root@sample ~]#?mysql -u root -p ?← 通過暗碼用root登錄 Enter password: ?← 在這里輸入暗碼 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8 to server version: 4.1.20
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.MYSQL學習
mysql>?show databases; ?← 查看系統已存在的數據庫 +-------------+ | Database | +-------------+ | mysql | | test | +------------+ 2 rows in set (0.02 sec)MYSQL學習
mysql>?drop database test; ?← 刪革職為test的空數據庫 Query OK, 0 rows affected (0.07 sec)MYSQL學習
mysql>?show databases; ?← 查看系統已存在的數據庫 +-------------+ | Database | +-------------+ | mysql | ?← 確認名為test的數據庫被刪除,已不存在 +-------------+ 1 row in set (0.00 sec)MYSQL學習 mysql>?exit ?← 退出MySQL服務器 Bye |
下面對MySQL進行測試.包含建立新用戶,以及用對關系性數據庫進行數據庫操作的指令來試著建立數據庫及數據表.這里,新建用戶以centospub為例.
MYSQL學習
[root@sample ~]#?mysql -u root -p ?← 通過暗碼用root登錄 Enter password: ?← 在這里輸入暗碼
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 to server version: 4.1.20
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.MYSQL學習
mysql>?grant all privileges on test.* to centospub@localhost identified by '在這里定義暗碼'; ?← 建立對test數據庫有完全操作權限的名為centospub的用戶 Query OK, 0 rows affected (0.03 sec)MYSQL學習
mysql>?select user from mysql.user where user='centospub'; ?← 確認centospub用戶的存在與否 +---------+ | user | +---------+ |?centospub?| ?← 確認centospub已經被樹立 +---------+ 1 row in set (0.01 sec)MYSQL學習
mysql>?exit ?← 退出MySQL服務器 Bye
[root@sample ~]#?mysql -u centospub -p ?← 用新建立的centospub用戶登錄MySQL服務器 Enter password: ?← 在這里輸入暗碼
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 10 to server version: 4.1.20MYSQL學習
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.MYSQL學習
mysql>?create database test; ?← 樹立名為test的數據庫 Query OK, 1 row affected (0.00 sec)MYSQL學習
mysql>?show databases; ?← 查看系統已存在的數據庫 +-------------+ | Database | +-------------+ | test | +-------------+ 1 row in set (0.00 sec)MYSQL學習
mysql>?use test ?← 連接到數據庫 Database changed
mysql>?create table test(num int, name varchar(50)); ?← 在數據庫中樹立表 Query OK, 0 rows affected (0.03 sec)MYSQL學習
mysql>?show tables; ?← 查看數據庫中已存在的表 +-------------------+ | Tables_in_test | +-------------------+ | test | +-------------------+ 1 row in set (0.01 sec)MYSQL學習
mysql>?insert into test values(1,'Hello World!'); ?← 插入一個值到表中 Query OK, 1 row affected (0.02 sec)MYSQL學習
mysql>?select * from test; ?← 查看數據庫中的表的信息 +------+-------------------+ | num | name | +------+-------------------+ | 1 |?Hello World!? | +------+-------------------+ 1 row in set (0.00 sec)MYSQL學習
mysql>?update test set name='Hello Everyone!'; ?← 更新表的信息,賦予新的值 Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0MYSQL學習
mysql>?select * from test; ?← 查看數據庫中的表的信息 +------+----------------------+ | num | name | +------+----------------------+ | 1 |?Hello Everyone!?| ?← 確認被更新到新的值 +------+----------------------+ 1 row in set (0.01 sec)MYSQL學習
mysql>?delete from test where num=1; ?← 刪除表內的值 Query OK, 1 row affected (0.00 sec)MYSQL學習
mysql>?select * from test; ?← 確認刪除成果 Empty set (0.01 sec)MYSQL學習
mysql>?drop table test; ?← 刪除表 Query OK, 0 rows affected (0.01 sec)MYSQL學習
mysql>?show tables; ?← 查看表信息 Empty set (0.00 sec) ?← 確認表已被刪除MYSQL學習
mysql>?drop database test; ?← 刪革職為test的數據庫 Query OK, 0 rows affected (0.01 sec)MYSQL學習
mysql>?show databases; ?← 查看已存在的數據庫 Empty set (0.01 sec) ?← 確認test數據庫已被刪除(這里非root用戶的關系,看不到名為mysql的數據庫)MYSQL學習
mysql>?exit ?← 退出MySQL服務器 Bye
|
然后,刪除測試用過的遺留用戶.
MYSQL學習
[root@sample ~]#?mysql -u root -p ?← 通過暗碼用root登錄 Enter password: ?← 在這里輸入暗碼
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 12 to server version: 4.1.20
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.MYSQL學習
mysql>?revoke all privileges on *.* from centospub@localhost; ?← 撤消centospub用戶對數據庫的操作權限 Query OK, 0 rows affected (0.00 sec)MYSQL學習
mysql>?delete from mysql.user where user='centospub' and host='localhost'; ?← 刪除centospub用戶 Query OK, 1 row affected (0.01 sec)MYSQL學習
mysql>?select user from mysql.user where user='centospub'; ?← 查找用戶centospub,確認已刪除與否 Empty set (0.01 sec) ?← 確認centospub用戶已不存在MYSQL學習
mysql>?flush privileges; ?← 刷新,使以上操作生效 Query OK, 0 rows affected (0.01 sec)MYSQL學習
mysql>?exit Bye
|
末了,重新啟動一次HTTP服務,讓php-mysql反映到HTTP服務中.
MYSQL學習
[root@sample ~]#?/etc/rc.d/init.d/httpd restart ?← 重新啟動HTTP服務 Stopping httpd: [?OK?] Starting httpd: [?OK?] |
?終于搞掂!MYSQL學習
(*^__^*) 嘻嘻……,接下來設置裝備擺設phpmyadmin....MYSQL學習
維易PHP培訓學院每天發布《Mysql必讀在CentOS上MySQL數據庫服務器配置方法》等實戰技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養人才。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/13912.html