[转载]如何给mysql增加一个用户,要求只对某一数据库

[转载]如何给mysql增加一个用户,要求只对某一数据库,第1张

好像phpMyADMIN还没有这个功能,但可以用phpMyAdmin通过输入语句的方法建立用户,或者一般的图形界面的SQL管理程序也可以建立和编辑用户.这里只说使用GRANT语句的方法,当然还有直接修改MySQL表的方法,不过很麻烦,用的人不多~前提是有MySQL root权限例子:建立另一个超级用户(所有权限)的方法GRANT ALL ON *.* TO username@localhost IDENTIFIED BY 'password' WITH GRANT OPTIONlocalhost是主机名,也可以是IP,用于限定这个用户是否可以远程连接.还可以用通配符"%",比如%.im286.com,或者202.97.224.%*.* 中第一个星星是数据库名(*为所有数据库),第二个星星是表名(*为前面数据库下的所有表)ALL 是指全部语句的 *** 作权限(经常看到虚拟主机等的用户没有DROP权限,就是这里做了手脚)语法大概就是这样吧.

太多方法了!xiao1907给您如下建议。会哪个用哪个。

方法一

使用phpMyAdmin

(图形化管理MySql数据库的工具),这是最简单的,直接用SQL语句修改mysql数据库库的user表,不过别忘了使用PASSWORD函数,插入用户用Insert命令,修改用户用Update命令,删除用Delete命令。在本节后面有数据表user字段的详细介绍。

方法二

使用mysqladmin。输入

mysqladmin -u root -p oldpassword newpasswd

执行这个命令后,需要输入root的原密码,这样root的密码将改为newpasswd。同样,把命令里的root改为你的用户名,你就可以改你自己的密码了。

当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,那么这种方法就是无效的,而且mysqladmin无法把密码清空。

下面的方法都在mysql提示符下使用,且必须有mysql的root权限:

方法三

mysql> INSERT INTO mysql.user (Host,User,Password) VALUES ('%','system', PASSWORD('manager'))mysql> FLUSH PRIVILEGES

确切地说这是在增加一个用户,用户名为system,密码为manager。注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES来执行确认。

方法四

和方法三一样,只是使用了REPLACE语句

mysql> REPLACE INTO mysql.user (Host,User,Password) VALUES('%','system',PASSWORD('manager'))mysql> FLUSH PRIVILEGES

方法五

使用SET PASSWORD语句

mysql> SET PASSWORD FOR system@"%" = PASSWORD('manager')

你也必须使用PASSWORD()函数,但是不需要使用FLUSH PRIVILEGES来执行确认。

方法六

使用GRANT ... IDENTIFIED BY语句,来进行授权。

mysql> GRANT USAGE ON *.* TO system@"%" IDENTIFIED BY 'manager'

这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES来执行确认。

注:PASSWORD()函数作用是为口令字加密,在程序中MySql自动解释。

MySQL新建用户,授权,删去用户,修改密码 *** 作

测试环境:WIN32 mysql5.0.45

首先要声明一下:一般环境下,修改MySQL密码,授权,是需要有mysql里的root职权范围的。

注:本 *** 作是在WIN号令提示符下,phpMyAdmin一样适用。

用户:phplamp用户数值库:phplampDB

1.新建用户。

//登录MYSQL

@>mysql -u root -p

@>密码

//创立用户

mysql>insert into mysql.user(Host,User,Password) values("localhost","phplamp",password("1234"))

//按F5体系职权范围表

mysql>flush privileges

这样就创立了一个名为:phplamp密码为:1234的用户。

然后登录一下。

mysql>exit

@>mysql -u phplamp -p

@>输入密码

mysql>登录成功

2.为用户授权。

//登录MYSQL(有ROOT职权范围)。我里我以ROOT身份登录.

@>mysql -u root -p

@>密码

//首先为用户创立一个数值库(phplampDB)

mysql>create database phplampDB

//授权phplamp用户拥有phplamp数值库的所有职权范围。

>grant all privileges on phplampDB.* to phplamp@localhost identified by '1234'

//按F5体系职权范围表

mysql>flush privileges

mysql>其它 *** 作

/*

如果想指定部分职权范围给一用户,可以这样来写:

mysql>grant select,update on phplampDB.* to phplamp@localhost identified by '1234'

//按F5体系职权范围表。

mysql>flush privileges

*/

3.删去用户。

@>mysql -u root -p

@>密码

mysql>DELETE FROM user WHERE User="phplamp" and Host="localhost"

mysql>flush privileges

//删去用户的数值库

mysql>drop database phplampDB

4.修改指定用户密码。

@>mysql -u root -p

@>密码

mysql>update mysql.user set password=password('新密码') where User="phplamp" and Host="localhost"

mysql>flush privileges

-------------------------------------------------- --------------------------------------------------- -----------

mysql有几个图形办理软件很好用,好比mysql-front ,phpadmin等等,简单易用,这里就不做先容了。别的eclipse有个数值库办理的插件叫,可以对各类常用的数值库进行图形办理,也很好用。

下面步入正题,先容下sql常用 *** 作:

创立库表和查询插入删去记录的 *** 作熟稔,就不作先容了。这里主要说一下对用户和密码的 *** 作,这些 *** 作也很重要,尤其在刚启用数值库时颇有用。

登录MYSQL

>mysql -u root -p

>密码

创立用户

mysql>mysql>insert into mysql.user(Host,User,Password,ssl_cipher,x509_issu er,x509_sub

ject) values("localhost","fred",password("love"),'','',' ')

创立后的用户名为:fred 密码为:love

创立数值库(test)

mysql>create database test

将test数值库的所有职权范围授权给用户fred

>grant all privileges on test.* to fred@localhost identified by 'love'

按F5体系职权范围表

mysql>flush privileges

如果想指定部分职权范围给一用户,可以这样来写:

mysql>grant select,update on phplampDB.* to fred@localhost identified by 'love'

按F5体系职权范围表。

mysql>flush privileges

修改指定用户密码。

>mysql -u root -p

>密码

mysql>update mysql.user set password=password('新密码') where User="fred" and Host="localhost"

mysql>flush privileges

删去用户。

>mysql -u root -p

>密码

mysql>DELETE FROM user WHERE User="fred" and Host="localhost"

mysql>flush privileges

删去用户的数值库

mysql>drop database test

其它一些有用的 *** 作:

列出所有数值库

mysql>show database

切换数值库

mysql>use '数值库名'

列出所有表

mysql>show tables

预示数值表布局

mysql>describe 表名

删去数值库和数值表

mysql>drop database 数值库名

mysql>drop table 数值表名


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11514295.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存