mySQL怎么给用户使用,怎样使用MySQL

如何给mysql用户分配权限

1,Mysql下创建新的用户

主要从事网页设计、PC网站建设(电脑版网站建设)、wap网站建设(手机版网站建设)、成都响应式网站建设公司、程序开发、微网站、小程序设计等,凭借多年来在互联网的打拼,我们在互联网网站建设行业积累了丰富的网站制作、成都网站建设、网络营销经验,集策划、开发、设计、营销、管理等多方位专业化运作于一体,具备承接不同规模与类型的建设项目的能力。

语法:

1.create user 用户名 identified by '密码';

例:create user xiaogang identified by '123456';

新创建的用户,默认情况下是没有任何权限的。

2. 如何给用户分配权限

语法:

1.grant 权限 on 数据库.数据表 to '用户' @ '主机名';

例:给 xiaogang 分配所有的权限

grant all on *.* to 'xiaogang'@'%';

这个时候 xiaogang 就拥有了 所有权限了

3 如何更精准的控制用户的权限呢?

1.grant 权限 on 数据库.数据表 to '用户' @ '主机名';

例:让 xiaogang 有查询 tmp 数据库 tmp1 表的权限;

grant select on temp.temp1 to 'xiaogang'@'%'; //这个时候 xiaogang 就具有查询temp小的temp1的权限了。

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

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

然后登录一下:

mysqlexit;

@mysql

-u

test

-p

@输入密码

mysql登录成功

2.为用户授权

授权格式:grant

权限

on

数据库.*

to

用户名@登录主机

identified

by

"密码"; 

2.1

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

@mysql

-u

root

-p

@密码

2.2

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

mysqlcreate

database

testDB;

2.3

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

mysqlgrant

all

privileges

on

testDB.*

to

test@localhost

identified

by

'1234';

mysqlflush

privileges;//刷新系统权限表

格式:grant

权限

on

数据库.*

to

用户名@登录主机

identified

by

"密码"; 

2.4

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

mysqlgrant

select,update

on

testDB.*

to

test@localhost

identified

by

'1234';

mysqlflush

privileges;

//刷新系统权限表

2.5

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

 

mysqlgrant

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

@密码

mysqlDelete

FROM

user

Where

User='test'

and

Host='localhost';

mysqlflush

privileges;

mysqldrop

database

testDB;

//删除用户的数据库

删除账户及权限:drop

user

用户名@'%';

drop

user

用户名@

localhost;

4.

修改指定用户密码

@mysql

-u

root

-p

@密码

mysqlupdate

mysql.user

set

password=password('新密码')

where

User="test"

and

Host="localhost";

mysqlflush

privileges;

5.

列出所有数据库

mysqlshow

database;

6.

切换数据库

mysqluse

'数据库名';

7.

列出所有表

mysqlshow

tables;

8.

显示数据表结构

mysqldescribe

表名;

9.

删除数据库和数据表

mysqldrop

database

数据库名;

mysqldrop

table

数据表名;

怎样作为一个一般用户运行MySQL

为了将mysqld改由Unix用户user_name来运行,你必须做下列事情: 如果它正在运行,停止服务器(使用mysqladmin shutdown)。 改变数据库目录和文件以便user_name有权限读和写文件(你可能需要作为Unix的root用户才能做到):shell chown -R user_name /path/to/mysql/datadir如果在MySQL数据目录中的目录或文件是符号链接,你也将需要顺着那些链接并改变他们指向的目录和文件。chown -R不能跟随符号链接。以user_name用户启动服务器,或如果你正在使用MySQL 3.22或以后版本,以Unix root用户启动mysqld并使用--user=user_name选项,mysqld将在接受任何连接之前切换到以Unix user_name用户运行。 如果在系统被重新启动时,你使用mysql.server脚本启动mysqld,你应该编辑mysql.server用su以用户user_name运行mysqld,或使用--user选项调用mysqld。(不改变safe_mysqld是必要的。) 现在,你的mysqld进程应该正在作为Unix用户user_name运行,并运行完好。尽管有一件事情没有变化:权限表的内容。缺省 地(就在运行了脚本mysql_install_db安装的权限表后),MySQL用户root是唯一有存取mysql数据库或创建或抛弃数据库权限的用户。除非你改变了那些权限,否则他们仍然保持。当你作为一个Unix用户而不是root登录时,这不应该阻止你作为MySQL root用户来存取MySQL;只要为客户程序指定-u root的选项。注意通过在命令行上提供-u root,作为root存取MySQL,与作为Unix root用户或其他Unix用户运行MySQL没有关系。MySQL的存取权限和用户名与Unix用户名字是完全分开的。唯一与Unix用户名有关的是,如果当你调用一个客户程序时,你不提供一个-u选项,客户将试图使用你的Unix登录名作为你的MySQL用户名进行连接。如果你的Unix机器本身不安全,你可能应该至少在存取表中为MySQL root用户放上一个口令。


网页标题:mySQL怎么给用户使用,怎样使用MySQL
URL网址:http://scjbc.cn/article/dsdgggc.html

其他资讯