- 论坛徽章:
- 0
|
一、概述:
MySQL为一个多使用者、多执行绪及多站台的快速反应数据库系统,系统主要着眼于快速与多使用者,最大的好处是用于教育用途,免费使用。
它具有多种版本,从Unix到Windows 98(或NT)都有,很适合于一般教育界来使用开发一些资库料的整合应用,把它当成后端数据库系统,一个不错的选择。
二、资源:
作业环境:
RedHat 6.0 + CLE 0.8p1
原始出处:
http://www.mysql.net/
台湾Mirror站:
http://mysql.ht.net.tw/
版本:
MySQL-3.22.27中文修正版
档案来源:
ftp://sql.hmes.kh.edu.tw/pub/apache_php3_mysql/mysql-3.22.27/
或
Mirror站
ftp://ftp.linuxer.nu/Linux/apache_php_mysql/rpms/mysql-3.22.27/
或
Mirror站
http://linux.mcic.thu.edu.tw/download/pub/packages/apache+php+mysql/
档案列表:
-rw-r--r-- 1 root ftp 4693686 Nov 27 00:59 MySQL-3.22.27-2c.i386.rpm
-rw-r--r-- 1 root ftp 4041769 Nov 27 00:59 MySQL-3.22.27-2c.src.rpm
-rw-r--r-- 1 root ftp 541043 Nov 27 00:59 MySQL-bench-3.22.27-2c.i386.rpm
-rw-r--r-- 1 root ftp 2050704 Nov 27 00:59 MySQL-client-3.22.27-2c.i386.rpm
-rw-r--r-- 1 root ftp 601871 Nov 27 00:59 MySQL-devel-3.22.27-2c.i386.rpm
网络资源:
PHP-Zend Resources Center - 技术与资源交流中心 MySQL交流讨论区
瑞琦信息工作室 MySQL交流讨论区
linux.twbbs.org BBS站 MySQL版
三、安装:
以 root 身份登入 Redhat 系统。
到「档案来源」的其中一站下载上述五个档案。
依序以 rpm -ivh 命令将所下载下来的档案安装入Redhat操作系统中。
[root@test /root]# rpm -ivh MySQL-3.22.27-2c.i386.rpm
[root@test /root]# rpm -ivh MySQL-client-3.22.27-2c.i386.rpm
[root@test /root]# rpm -ivh MySQL-devel-3.22.27-2c.i386.rpm
若您需要重新Compiler,则只要安装 MySQL-3.22.27-2c.src.rpm 套件即可。
以 root 身份登入 Redhat 系统后,进入MySQL数据库系统。
[root@test /root]# mysql mysql
若安装成功您可看到下列画面,并看到mysql的提示号!
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 212 to server version: 3.22.27
Type 'help' for help.
mysql>
更改MySQL系统之管理者密码(新密码的地方,换成您要设定的密码)
mysql> UPDATE user SET password=password('新密码') where user='root';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
删除空账号,以维护系统安全
mysql> DELETE FROM user WHERE User = '';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
(最后是两个单引号)
实时更新上述修正之数据
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
离开MySQL数据库系统
mysql> exit
Bye
[root@test root]#
测试一下刚刚更新的密码是否正常:
[root@test root]# mysql mysql -uroot -p新密码
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 29 to server version: 3.22.27
Type 'help' for help.
mysql> exit
Bye
[root@test root]#
说明:(1)mysql mysql为连结MySQL数据库,数据库名称为mysql。
(2)-uroot:-u宣告使用者,root为使用者名称。
(3)-p新密码:-p宣告密码,后面接root新设的密码。
以后进入使用MySQL数据库系统,须以下列格式进入:
[root@test root]# mysql 数据库名称 -u使用者名称 -p密码
说明:[-u使用者名称]-u和使用者名称间不可有空格。
[-p密码]-p和密码间不可有空格。
四、mysqladmin公用程序的使用:
新增数据库:
[root@test root]# mysqladmin -uroot -p密码 create 数据库名称
说明:用法与mysql一样,-u紧接MySQL管理者账号(通常为root),-p紧接管理者密码(通常为root之密码)
数据库名称为您要新增的DataBase的名称。
删除数据库:
[root@test root]# mysqladmin -uroot -p密码 drop 数据库名称
说明:用法与上述新增数据库方式一样。
关闭MySQL服务:
[root@test root]# mysqladmin -uroot -p密码 shutdown
五、基本用法:
增加新的MySQL使用者:(方法一)
(1)开启mysql数据库
[root@test root]# mysql mysql -uroot -p密码
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 29 to server version: 3.22.27
Type 'help' for help.
mysql>
(2)增加一个新账号,并设定权限
mysql> insert into user values ('host','user',password('密码'),'y','y','y','y','y','y','y','y','y','y','y','y','y','y');
说明:host->填入您要联机的主机名称(完整名称hostname+domainname),若位于本机则填localhost。
user-->您要设定的账号
密码-->您要设定的密码
之后14个y代表着14个不同的权限,依序为
4.
1.Select_priv
2.Insert_priv
3.Update_priv
4.Delete_priv
5.Index_priv
6.Alter_priv
7.Create_priv
8.Drop_priv
9.Grant_priv
10.References_priv
11.Reload_priv
12.Shutdown_priv
13.Process_priv
14.File_priv
若您不开放权限,则在该项目下填n即可。
增加新的MySQL使用者:(方法二)(较安全)
格式:
mysql> GRANT 权限 ON 数据库(或数据表TABLE) TO user@host IDENTIFIED BY '密码';
说明:权限授与共分三种:
对数据库(DateBase)有十五种权限:
ALL PRIVILEGES
ALTER
CREATE
DELETE
DROP
FILE
INDEX
INSERT
PROCESS
REFERENCES
RELOAD
SELECT
SHUTDOWN
UPDATE
USAGE
对数据表(Table)则只有八种权限:
SELECT
INSERT
UPDATE
DELETE
CREATE
DROP
INDEX
ALTER
对数据域(column)则只有三种权限:
SELECT
INSERT
UPDATE
user@host表示法:表示来自host主机的user使用者。user为您欲联机MySQL的账号,host则必须填上你联机来源的主机完整名称(hostname.domianname);例如:我想要设定的账号为coco,而且是从mail.hmes.kh.edu.tw这台主机连上来使用的,所以就写成coco@mail.hmes.kh.edu.tw。若使用万用字符,则必须加上括号,例如:('test%'@'%.hinet.net')==>表示从.hinet.net网域连上来的test开头的账号。
GRANT的特性:在MySQL数据库,若找到相对应的entry则只作UPDATE,找不到才会CREATE一个新的账号及权限。
权限设定建议:除了管理者外,其它user尽量避免设定全部权限全开。一般而言,只开SELECT、INSERT、UPDATE三项权限;进阶的user则加开DELETE、CREAT、DROP、INDEX四项权限;其余权限,能不开,则不开,以确保整个MySQL的安全性。
(1)新增账号,并给予全部权限
mysql> GRANT ALL PRIVILEGES ON *.* TO user@host IDENTIFIED BY '密码';
说明:将全部权限都设给从host联机上来的user这个人,并给定密码为密码。
(2)新增账号,并指定某数据库与特定权限给该账号
mysql> GRANT SELECT,INSERT,UPDATE ON 数据库名.* TO user@host IDENTIFIED BY '密码';
说明:开放某数据库给从host联机上来的user这个人,并给定密码为密码。
删除使用者账号与权限:
格式:
mysql> REVOKE 权限 ON 数据库(或数据表TABLE) TO user@host IDENTIFIED BY '密码';
说明:命令与用法均与GRANT一样,特性也一样,但不做DELETE的动作,只是将权限关闭,真的要删除时,须用到DELETE命令。
对MySQL直接下命令作任何动作,离开MySQL系统时,必须先做实时更新(FLUSH)再离开吧!
mysql> FLUSH PRIVILEGES;
在操作系统中,检查权限之命令:
[root@test root]# mysqlaccess host user 数据库名 -U root -P 密码
说明:host->填入您要检查的来源主机名称(完整名称hostname+domainname),若位于本机则填localhost。
user-->您要检查的账号
数据库名-->填入您要检查的数据库名称
-U root-->-u后面填入MySQL管理者的账号(通常设root)
-P 密码-->-p后面填入MySQL管理者的密码
例如:我要检查来自mail.hmes.kh.edu.tw这台机器的root账号,对数据库fm的权限为何?
则在系统下输入
21.
[root@test root]# mysqlaccess mail.hmes.kh.edu.tw fm focalmail -U root -P nnyyjj
22. 结果为
mysqlaccess Version 2.03, 27 Feb 1997
By RUG-AIV, by Yves Carlier (Yves.Carlier@rug.ac.be)
This software comes with ABSOLUTELY NO WARRANTY.
+++USING FULL WHERE CLAUSE+++
+++USING FULL WHERE CLAUSE+++
+++USING FULL WHERE CLAUSE+++
Access-rights
for USER 'fm', from HOST 'mail.hmes.kh.edu.tw', to DB 'focalmail'
+-----------------+---+ +-----------------+---+
| Select_priv | Y | | Shutdown_priv | Y |
| Insert_priv | Y | | Process_priv | Y |
| Update_priv | Y | | File_priv | Y |
| Delete_priv | Y | | Grant_priv | Y |
| Create_priv | Y | | References_priv | Y |
| Drop_priv | Y | | Index_priv | Y |
| Reload_priv | Y | | Alter_priv | Y |
+-----------------+---+ +-----------------+---+
NOTE: A password is required for user `fm' :-(
The following rules are used:
db : 'No matching rule'
host : 'Not processed: host-field is not empty in db-table.'
user : '','fm','017186377a52afaf','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y''
BUGs can be reported by email to Yves.Carlier@rug.ac.be
[root@test /root]#
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/41578/showart_354783.html |
|