澳门新浦京娱乐场网站-www.146.net-新浦京娱乐场官网
做最好的网站

澳门新浦京娱乐场网站MySQL用户权限验证与管理方

难点讲述:

前言

Centos陆.伍重新恢复设置mysql密码并设置允许远程连接

root密码忘记,重新恢复设置mysql的root密码:

一、修改mysql的计划文件my.cnf

1.在[mysqld]的段中加上一句:skip-grant-tables

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-name-resolve
skip-grant-tables
保留并且脱离vi。

(或执行 mysqld_safe --skip-grant-tables &)

2.双重起动mysqld
# /etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]

三.登六并修改MySQL的root密码
# /usr/bin/mysql
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 3 to server version: 3.23.56
Type 'help;' or 'h' for help. Type 'c' to clear the buffer.

mysql> use mysql ;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0

mysql> flush privileges ;
Query OK, 0 rows affected (0.01 sec)

mysql> quit
Bye
四.将MySQL的报到设置修改回来
# vi /etc/my.cnf
将刚刚在[mysqld]的段中增加的skip-grant-tables删除
保存并且脱离vi。

5.重新启航mysqld
# /etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]

二、

停止mysql服务

/etc/init.d/mysqld stop

sudo mysqld_safe --skip-grant-table&

mysql

use mysql;

update user set password = password('yourpasswd') where user = 'root';

flush privileges;

重启下mysql服务就可以再一次用新密码登陆

/etc/init.d/mysqld restart

允许远程连接mysql

透过navicat连接MySQL的时候发生的那几个错误
ERROR 1130: Host ***.***.***.*** is not allowed to connect to this MySQL server
表明所连接的用户帐号未有远程连接的权力,只可以在本机(localhost)登陆。
需更动 MySQL 数据Curry的 user表里的 host项
把localhost改称%

一、

登陆到MySQL ,首先 use MySQL;
依据外人提供的诀窍update的时候,出现谬误。
MySQL> update user set host='%' where user = 'root';
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
下一场查看了下数据库的host消息如下:
MySQL> select host from user where user = 'root';
-----------------------
| host |
-----------------------
| % |
| 127.0.0.1 |
| localhost.localdomain |
-----------------------
3 rows in set (0.00 sec)
host已经有了%那些值,所以直接运维命令:

MySQL>flush privileges;

二、

mysql> grant all privileges on *.* to 'root'@'%' withgrant option;

Query OK, 0 rows affected (0.02 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

mysql> selectuser.host from user;

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

| user| host|

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

| root| %|

| root| 127.0.0.1|

| repl_user | 192.168.1.52 |

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

3 rows in set (0.00 sec)

允许钦命IP访问mysql

mysql> grant all privileges on *.* to'root'@***.***.***.****identifiedby '123456';
QueryOK, 0 rows affected (0.00 sec)

root密码忘记,复位mysql的root密码: 一、修改mysql的安排文件my.cnf 一.在[mysqld]的段中加上一句:ski...

正文实例讲述了MySQL用户权限验证与管理方法。分享给大家供我们参考,具体如下:

1、登陆MySQL:
mysql -u root -p 
password:输入密码
二、查看用户消息
select user,host,password from mysql.user;
select user,host from mysql.user;
三、设置密码
set password for root@localhost=password('在那边填入root密码');
四、修改密码
方法1:mysqladmin -u root -p password newpassword
方法2: #mysql -u root -p mysql
               mysql>UPDATE user SET password=PASSWORD("new") WHERE user='root'; 
               mysql>flush privileges;
5、删除无名用户
delete from mysql.user where user='';
6、查看系统已存在的数据库
show databases;
柒、删除名称叫test的空数据库
drop database test;
8、建立mysql用户
例a:创设对test数据库有一同操作权限的名字为centospub的用户
mysql>grant all privileges on test.* to centospub@localhost  identified by 'password';
例b:扩展二个用户test一密码为abc,让他得以在别的主机上登入,并对富有数据库有询问、插入、修改、删除的权位。首先用以root用户连入MYSQL,然后键入以下命令:
mysql>grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";
但例b扩大的用户是可怜非常危急的,你想如有个别人了然test一的密码,那么她就能够在internet上的任何一台微型计算机上登入你的mysql数据库并对你的数据可认为所欲为了。
例c:增添三个用户test二密码为abc,让她只可以够在localhost上登入,并得以对数据库mydb进行询问、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的这台主机),那样用户即选拔知道test二的密码,他也无能为力从internet上一向访问数据库,只可以通过MYSQL主机上的web页来访问了。
mysql>grant select,insert,update,delete on mydb.* to test2@localhost  identified by "abc";
玖、查找确认centospub用户的留存与否
select user from mysql.user where user='centospub';
10、 营造名称叫test的数据库
create database test;
1一、撤废centospub用户对数据库的操作权限
revoke all privileges on *.* from centospub@localhost ;
12、删除centospub用户
delete from mysql.user where user='centospub' and host='localhost';
一三、刷新,使所做的改造生效 
flush privileges;
1四、忘记MySQL的root密码,怎么修改

澳门新浦京娱乐场网站 1

妇孺皆知在默许情状下,我们安在Ali云上的mysql是不支持远程连接的,但是我们还索要经过一些工具来再三再四mysql,如navicat,那时就须要大家来修改mysql的长距离连接了。

1、Mysql权限分两品级验证

只要 MySQL 正在运行,首先杀之: killall -TE奥迪Q5M mysqld。
启动 MySQL :PATH_澳门新浦京娱乐场网站MySQL用户权限验证与管理方法详解,阿里云下配置MySQL远程连接详解。TO_MYSQL/bin/mysqld --skip-grant-tables &
就足以不须要密码就进入 MySQL 了。
然后正是
mysql>use mysql
mysql>update user set password=password("new_pass") where user="root";
mysql>flush privileges;
双重杀 MySQL ,用健康艺术运维 MySQL
自然留神:多数新手未有用password=password("..."),而是一向password="..."所以改掉密码倒霉使

 ERROR 1130 (HY000): Host 'localhost' is not allowed to connect to this MySQL server

只顾一点:当大家修改完mysql权限相关的操作后明显要刷新权限表,使配置生效,推行

  1. 服务器检查是不是同意连接:用户名、密码,主机地址。

  2. 自己谈论各种伸手是不是有权力执行。

[补充]

先是网络的主题材料大部分是远程登入MySQL,用户Ip未有权力,用本机登录扩张权限。然而本人的便是本地都进不去。。。

flush privileges (主要)

贰、Mysql权限列表

1伍.mysql 远程访问

安装的是官方网站的mysql免安装版  

意况前提:centos七 mysql5.七

权限 权限级别 权限说明
create 数据库、表或索引 创建数据库、表或索引权限
drop 数据库或表 删除数据库或表权限
grant option 数据库、表或保存的程序 赋予权限选项
references 数据库或表 外键权限
alter 更改表,比如添加字段、索引、修改字段等
delete 删除数据权限
index 索引权限
insert 插入权限
select 查询权限
update 更新权限
create view 视图 创建视图权限
show view 视图 查看视图权限
alter routine 存储过程 更改存储过程权限
create routine 存储过程 创建存储过程权限
execute 存储过程 执行存储过程权限
file 服务器主机上的文件访问 文件访问权限
create temporary tables 服务器管理 创建临时表权限
lock tables 服务器管理 锁表权限
create user 服务器管理 创建用户权限
proccess 服务器管理 查看进程权限
reload 服务器管理 执行flush-hosts, flush-logs, flush-privileges, flush-status, flush-tables, flush-threads, refresh, reload等命令的权限
replication client 服务器管理 复制权限
replication slave 服务器管理 复制权限
show databases 服务器管理 查看数据库权限
shutdown 服务器管理 关闭数据库权限
super 服务器管理 执行kill线程权限

update mysql.user set host = '%' where user = 'root'; 

安装mysql的劳累历程:

1、首先登入位于Ali云上的mysql:

叁、Mysql用户权限处理操作

 

(一)免安装版,

mysql -u root -h localhost -p

1. 权力查询:

**、修改今后,一定要刷新,使所做的转移生效 
flush privileges;

免安装版要领多少个,配置情状变量,配置my.ini,然后在dos系统中

**2、打开mysql数据库 ** (供给有能操作mysql那么些库的权柄,一般是mysql的root用户)

(一)查看mysql的装有用户及其权限:

 

mysqld --install

use mysql

select * from mysql.userG;

 

输入 mysqld --initialize-insecure --user=mysql; 初步化数据文件

三、那时大家有二种艺术来开始展览改造:

(格式化呈现)

 

下一场再度启航mysql 然后用命令 mysql –u root –p 进入mysql管理分界面(密码可为空)

先是种:是向来将原先的 user='root' and host='localhost'笔录的host修改成%或钦定的ip

(贰)查看当前mysql用户权限:

 

修改密码:update mysql.user set authentication_string=password('123456789') where user='root' and Host = 'localhost';

一)将host设置为%象征别的ip都能延续mysql

show grants;

刷新权限:flush privileges;

update user set host='%' where user='root' and host='localhost'

(三)查看有些用户的权能:

翻看服务是或不是运维:net start mysql

  1. 理之当然也得以将host内定为有些ip
show grants for 用户名@主机;

(二)安装可进行程序版,  

update user set host='106.39.178.131' where user='root' and host='localhost'

示例:

可推行程序版本一向点下一步就能够,会有二个海豚同样的服务分界面

  1. 执行完以上语句,接着实行以下语句 ,刷新权限表,使配置生效
show grants for root@localhost;

 修改密码可径直通过navicat连接到mysql后,用查询命令进行修改

flush privileges

2. Mysql用户创设:

一、服务是或不是张开

第二种: 是新添一条记下格局

主意一:使用create user命令制造。

本身的管理器,右击->管理->服务,找到Mysql,选取本地系统

1)新扩充3个用户newname(那一个新增添的用户名称也足以为root)密码为并将host设置为%意味别的ip都能三番五次mysql

create user '用户名'@'主机' identified by '密码';

澳门新浦京娱乐场网站 2

grant all on . to 'newname'@'%' identified by 'Navicat_123'

示例:

②、修改主机名

二)新扩张一个用户newname,密码为并将host设置为钦赐的ip 表示 唯有该ip能延续mysql

create user 'wjt'@'localhost' identified by 'wujuntian';

自个儿的Computer,右击->管理->服务,找到Mysql,重启一下。 
若一分外,在navicat的连日属性上将里面包车型大巴主机名也许IP修改为12柒.0.0.一。

grant all on . to 'newname'@'106.39.178.131' identified by 'Navicat_123'

艺术二:直接向数据表mysql.user中插入一条用户记录。

三、免密登入

  1. 奉行完以上语句,接着施行以下语句 ,刷新权限表,使配置生效

示例:

flush privileges

复制代码 代码如下:

采取这几个点子是由此免密码登录,每用2遍MySQL都供给重新操作叁次

道理当然是那样的倘使想再改成本地的延续,只须要将对应用户的host改成localhost就可以,

insert into mysql.user set user='wujuntian',host='localhost',password=password('123123');

澳门新浦京娱乐场网站 3

update user set host='localhost' where user='root' and host='106.39.178.131'

注意:

承继:免密登录后,能够因此加多mysql的root用户

4、不要以后就去navicat实行一而再,还要求做两件事,要不您就到坑里了

利用办法贰早晚要记得要试行flush privileges刷新权限。其次,mysql五.柒后头,mysql.user表的password字段已被authentication_string代替,所以应将“password”改为“authentication_string”,密码一定要选择password函数加密。

新兴网民提示,才晓得原因:

 1)检查服务器防火墙3306端口开放了吗,没开放需要去开放

 2)检查一下阿里云的安全组规则中是否开放了3306端口,

3. Mysql用户删除:

在设置了mysql的数据库中,不要违法关机,强制断电,不然会出现这么的标题。

如何检查及铺排参考文书档案:https://help.aliyun.com/document_detail/25471.html?spm=5176.100241.0.0.IneJPl

drop user '用户名'@'主机';

地面出现了Error 1130,这远程连接也必然会油可是生该问题,解决了本地连接难点,却不确定缓和长途连接出现Error 1130主题素材。

五、今后是时候进行远程连接啦,在工具里输入相应的参数

四. Mysql用户权限授予:

四、修改密码(mysql 5.七.二3)

host: Ali云服务器的ip

刚创造的用户暗许是绝非权限的,须求采取grant指令进行权力的给予。

(一)进入mysql ,首先进行再三再四权限数据库:use mysql

port:3306

grant指令完整格式:

(2)改密码:update user set authentication_string=password('123') where user='root';

user name : 假使是率先种办法的改换,用户正是root,第二种修改就是你和谐安装的名字,举例笔者的就是newname

grant 权限列表 on 数据库名.数据表名 to '用户名'@'主机' identified by '密码' with grant option;

(3)刷新权限:flush privileges;

password: 假诺是率先种方法的修改,密码正是root的密码,第三种修改便是你协和安装的密码,比如作者的正是Navicat_123

示例:

设若navicat不可能再而三到地点mysql服务,那么运用命令提醒符进入到mysql 的bin目录下,更新一下密码一般就能够了

由来,连上去那一刻,有木有很震惊啊。

grant all privileges on *.* to 'wjt'@'localhost' identified by "wujuntian" with grant option;

澳门新浦京娱乐场网站,mysqladmin -uroot -p123 password 12345

总结

可使用“*”表示具有数据库或具有数据表,“%”表示别的主机地址。

伍、远程连接mysql服务器报错

以上正是那篇小说的全体内容了,希望本文的剧情对大家的就学或然干活能拉动一定的增派,假若有疑点我们能够留言沟通,谢谢我们对剧本之家的帮忙。

能够使用grant重复给用户拉长权限,实行权力叠加。

(1)10065

with grant option:那些选项表示该用户能够将和睦有所的权力授权给外人。

澳门新浦京娱乐场网站 4

回忆授权后一定要刷新权限:

拾065报错是因为一直未有拼通对方的ip

flush privileges;

(2)10060

5. Mysql用户权限回收:

难点时有产生的原故根本有:mysql服务未有运行;双方电脑的防火墙未有平息,尤其注意,要两台计算机的防火墙都关闭;

revoke指令格式:

产生这几个主题材料的第权且间首先是重启服务

revoke 权限列表 on 数据库名.数据表名 from 用户名@主机;

澳门新浦京娱乐场网站 5

示例:

 

revoke select on test.user from wjt@localhost;

1、grant all privileges on *.* to 'root'@'%' identified by 'youpassword' with grant option; flush privileges;

注意:

2、grant all on db.* to user@'IP' identified by 'pwd';

实质上GRANT语句在实行的时候,要是权力表中不存在指标账号,则创制账号;假设已经存在,则实行权限的骤增。

除了在cmd的dos景况下张开操作,还是能用root登六navicat可视化分界面进行询问操作

usage权限不可能被回收,也正是说,REVOKE用户权限并不可能去除用户。

六. 对账户重命名:

rename user '旧用户名'@'旧主机' to '新用户名'@'新主机';

示例:

rename user 'wujuntian'@'localhost' to 'ajun'@'localhost';

七. Mysql用户密码修改:

方法一:使用set password命令。

set password for '用户名'@'主机' = password('新密码');

示例:

set password for 'root'@'localhost' = password('123456');

方法二:修改mysql.user表中的password(或authentication_string)字段。

示例:

复制代码 代码如下:

update mysql.user set password=password('123123') where user='root' and host='localhost';

注意:

此方法自然要进行“flush privileges;”指令刷新权限,不然密码修改不能够生效。Mysql伍.7从此应将“password”改为“authentication_string”。

格局叁:使用grant指令在授权时修改密码:

grant select on 数据库名.数据表名 to 用户名@主机 identified by '新密码' with grant option;

示例:

复制代码 代码如下:

grant select on test.user to ajun@localhost identified by '111111' with grant option;

方法四:运维mysqladmin脚本文件。

该文件一般在mysql安装目录下的bin目录中。进入该目录,依据一下二种具体景况输入指令(只有root用户有其一权力)。

(一)用户尚无密码:

mysqladmin -u 用户名 password 新密码;

(二)用户已有密码:

mysqladmin -u 用户名 -p password 新密码;

(回车后会提醒输入旧密码,输入之后就能够修改成功。)

注意:

退换密码时候势须求使用PASSWO宝马X3D函数(mysqladmin 和GRANT 两种艺术不用写,会活动抬高)。

8. 忘记密码登入mysql:

方法一:

先甘休正在运转的Mysql服务,在命令行窗口进入mysql安装目录下的bin目录,在-skip-grant-tables参数下运营mysqld文件(Linux系统运转mysqld_safe文件更安全):

mysqld --skip-grant-tables

诸如此类能够跳过Mysql的访问调控,在决定台以管理人的身份进入mysql数据库。其余再展开2个限令行窗口,进入mysql安装目录下的bin目录,直接输入:mysql,回车,就能够登六mysql,然后就能够重复设置密码了(注意:此时“Mysql用户密码修改”中的二种方法唯有第两种办法能使用!)。设置成功后脱离,重启Mysql服务。

措施二:修改mysql配置文件my.ini。

其实原理和办法一一样,都以应用Mysql提供的--skip-grant-tables参数来跳过Mysql的访问调节。展开mysql配置文件my.ini,在'[mysqld]'下进入“skip-grant-tables”,保存,重启Mysql服务,然后就足以不需密码登入mysql进行密码修改了。

Mysql中的“mysql”数据库存储着具备Mysql用户的权限音信数据表。当Mysql运营时,全数的权限表内容都被读进内部存款和储蓄器中,举行权力剖断时直接使用内部存款和储蓄器中的剧情开始展览判断。用grant、revoke或set password对权力表举办的修改会马上棉被和衣服务器注意到,GRANT操作的真面目正是修改权限表后实行权力的基础代谢。不过1旦手工业修改权限表,例如利用insert、update、delete等操作权限表的话,应该进行多个flush privileges命令,该命令会使服务重视新读取权限表内容到内部存款和储蓄器,从而使修改生效。假使不试行该命令,必须重启mysql服务手艺见效。所以,最棒使用grant、revoke或set password对权力表进操作,能够省去实施flush privileges命令的劳动,而且若是忘了进行这几个命令的话你会很抓狂。。。

不唯有如此,删除用户、重命名用户最棒也独家采取drop user、rename user命令进行操作,而并非采取delete、update命令举办操作。前者不但会对mysql.user数据表举办操作,同时也会更新任何权限表的笔录,而后者只会对mysql.user表的数目开始展览操作,那样会冒出过多难点,因为用户的权位消息不仅留存于mysql.user表中。比方你利用delete删除了mysql.user表中的叁个用户,可是并未有操作别的权限数据表的话,那么任何权限数据表比如tables_priv中关于该用户的权能记录还存在着,下次1旦想利用create user命令创设同样名称的用户会失利,只可以选择insert into指令向mysql.user表中插入记录,也许先把任何权限数据表中与该用户名相关的记录删除。使用update命令重命名用户也会晤世异常的大标题,重命名后用户失去了过多的权能,而任何权限表中有关原用户名的笔录则成了没用的记录,除非你对每一个权力表都进行一样的翻新操作,但那很麻烦。所以,使用drop user、rename user吧,多少个发令就足以让系统活动帮你完结有着专门的学业,甘心情愿呢!

Mysql权限检查:

mysql 先反省对大范围是还是不是有权力,如若未有再到小范围里去反省。例如:先反省对这几个数据库是或不是有select权限,假如有,就允许施行。假诺未有,再自己批评对表是不是有select权限,向来到最细粒度,也从不权力,就拒绝推行。因而,粒度调控越细,权限校验的手续越多,质量越差。

越来越多关于MySQL相关内容感兴趣的读者可查阅本站专题:《MySQL查询技术大全》、《MySQL事务操作技术汇总》、《MySQL存款和储蓄进程本事大全》、《MySQL数据库锁相关技巧汇总》及《MySQL常用函数大汇总》

愿意本文所述对大家MySQL数据库计有所帮忙。

您大概感兴趣的稿子:

  • MySQL创立用户与授权及吊销用户权限方法
  • MySQL用户权限管理详解
  • mysql SKIP-NAME-RESOLVE 错误的行使时机变成用户权限
  • Windows下落权MYSQL和apche的运作等第(普通用户权限运转)
  • MySQL中程导弹出用户权限设置的台本分享
  • MySQL验证用户权限的不贰诀要
  • 在MySQL中扩展新用户权限的法子
  • MySQL数据库下用户及用户权限配置
  • MySQL与Oracle 差距比较之7用户权限
  • MySQL 成立用户、授权用户、撤消用户权限、改换用户密码、删除用户(实用能力)

本文由澳门新浦京娱乐场网站发布于数据库,转载请注明出处:澳门新浦京娱乐场网站MySQL用户权限验证与管理方