如何给mysql数据库添加一个用户

如何给mysql数据库添加一个用户,第1张

MySQL添加用户、删除用户与授权

MySql中添加用户,新建数据库,用户授权,删除用户,修改密码(注意每行后边都跟个表示一个命令语句结束):

1.新建用户

1.1

登录MYSQL:

@>mysql

-u

root

-p

@>密码

1.2

创建用户:

mysql>

insert

into

mysql.user(Host,User,Password)

values("localhost","test",password("1234"))

这样就创建了一个名为:test

密码为:1234

的用户。

注意:此处的"localhost",是指该用户只能在本地登录,不能在另外一台机器上远程登录。如果想远程登录的话,将"localhost"改为"%",表示在任何一台电脑上都可以登录。也可以指定某台机器可以远程登录。

1.3

然后登录一下:

mysql>exit

@>mysql

-u

test

-p

@>输入密码

mysql>登录成功

2.为用户授权

授权格式:grant

权限

on

数据库.*

to

用户名@登录主机

identified

by

"密码" 

2.1

登录MYSQL(有ROOT权限),这里以ROOT身份登录:

@>mysql

-u

root

-p

@>密码

2.2

首先为用户创建一个数据库(testDB):

mysql>create

database

testDB

2.3

授权test用户拥有testDB数据库的所有权限(某个数据库的所有权限):

mysql>grant

all

privileges

on

testDB.*

to

test@localhost

identified

by

'1234'

mysql>flush

privileges//刷新系统权限表

格式:grant

权限

on

数据库.*

to

用户名@登录主机

identified

by

"密码" 

2.4

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

mysql>grant

select,update

on

testDB.*

to

test@localhost

identified

by

'1234'

mysql>flush

privileges

//刷新系统权限表

2.5

授权test用户拥有所有数据库的某些权限:

 

mysql>grant

select,delete,update,create,drop

on

*.*

to

test@"%"

identified

by

"1234"

//test用户对所有数据库都有select,delete,update,create,drop

权限。

//@"%"

表示对所有非本地主机授权,不包括localhost。(localhost地址设为127.0.0.1,如果设为真实的本地地址,不知道是否可以,没有验证。)

//对localhost授权:加上一句grant

all

privileges

on

testDB.*

to

test@localhost

identified

by

'1234'即可。

3.

删除用户

@>mysql

-u

root

-p

@>密码

mysql>Delete

FROM

user

Where

User='test'

and

Host='localhost'

mysql>flush

privileges

mysql>drop

database

testDB

//删除用户的数据库

删除账户及权限:>drop

user

用户名@'%'

>drop

user

用户名@

localhost

4.

修改指定用户密码

@>mysql

-u

root

-p

@>密码

mysql>update

mysql.user

set

password=password('新密码')

where

User="test"

and

Host="localhost"

mysql>flush

privileges

5.

列出所有数据库

mysql>show

database

6.

切换数据库

mysql>use

'数据库名'

7.

列出所有表

mysql>show

tables

8.

显示数据表结构

mysql>describe

表名

9.

删除数据库和数据表

mysql>drop

database

数据库名

mysql>drop

table

数据表名

mysql怎样增加用户

格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"

例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:

mysql>grant select,insert,update,delete on *.* to test1@"%" Identified by "abc"

但例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。

例2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的 *** 作(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。

mysql>grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc"

如果你不想test2有密码,可以再打一个命令将密码消掉。

mysql>grant select,insert,update,delete on mydb.* to test2@localhost identified by ""

另外,也可以通过直接往user表中插入新纪录的方式来实现。


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

原文地址: https://outofmemory.cn/zaji/7173917.html

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

发表评论

登录后才能评论

评论列表(0条)

保存