威尼斯人线上娱乐

此地安装示例为mysql5,MySQL的安全机制

26 3月 , 2019  

Bug描述

今天周末,在家里学点新技巧,尽管公司分配的职责没有形成(滑稽滑稽)

 

本人先制造了贰个mysql数据库,用root用户成立一个新用户,毕竟项目中央银行使root是相当危急的,尤其是自己如此的实习生(再一次滑稽)。然后喜笑颜开的给它赋予了权力,切换用户

然则,不高兴的事体产生了:

ERROR 1045 (28000): Access denied for user ‘xxx’@’localhost’ (using
password: YES)

  密码错了? 

    算了,再敲3回

      fuck,依然错了

        大概设密码的时候手抖了

          那笔者就重设下密码吗

            update user set
password=password(‘密码’) where user=’用户名’ ; 

              然后,看到 0
行被更新???

  然后怀着疑虑人生的神态搜了很久,前一页的博客都是一样的,唉~

  一通乱操作之后照旧不曾x用,都以说改密码,还有扯php的。。。

今日周末,在家里学点新技巧,即便公司分红的职务没有形成(滑稽滑稽)

威尼斯人线上娱乐,MySQL的安全机制:

壹 、  mysql安装(此处实例mysql版本为5.6版本)

# 化解进程

  后来无形中中跻身stackoverflower,然后一看提问,发现遭受的动静和本人一模一样:

 

1.MySQL登录

  a) 下载mysql的repo源

## 提问

威尼斯人线上娱乐 1

  作者先创设了1个mysql数据库

mysql -u账户 -p密码 -h127.0.0.1 -P端口 数据库名

    $ wget

## 回答

威尼斯人线上娱乐 2

 

忽略就是你有二个用户名为空的账户,mysql会先匹配它,然后就一贯提示您密码错误,删掉这些匿名用户,然后实施
FLUSH PSportageIVILEGES;

 

Delete FROM user Where User='' and Host='localhost';

flush privileges;

 

  然后用root用户创立多少个新用户,究竟项目中动用root是老大危险的,特别是小编这么的实习生(再一次滑稽)

mysql -h hostname|hostIP -p port -u username -p password databaseName -e
“SQL语句”;

  b) 安装mysql-community-release-el7-5.noarch.rpm包

# 总结        

 

    然后就足以愉悦的登陆成功,开端光荣的增加和删除改查之旅了

 

    威尼斯人线上娱乐 3

 

  

  再然后心满意足的给它赋予了权力,然后切换用户

退出:

此地安装示例为mysql5,MySQL的安全机制。    $ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

  再再然后,不乐意的政工时有产生了:

exit\quit;

    安装这一个包后,会收获多个mysql的yum
repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo。

    ERROR 1045 (28000): Access denied for user ‘xxx’@’localhost’
(using password: YES)

2.MySQL账户管理

  c) 安装mysql

  密码错了? 

开创用户:

    $ sudo yum install mysql-server

    算了,再敲二遍

create user ‘username’@’hostname’ identified by ‘password’;

    依据提醒安装就足以了,可是安装落成后尚未密码,必要重置密码

      fuck,还是错了

grant 权限(增加和删除改查) on database_name to
‘username’@’hostname(一般是localhost)’ identified by “密码”;

  d)  重置mysql密码

        大概设密码的时候手抖了

修改密码(当前报到用户的密码):

    $ mysql -u root

          那小编就重设下密码吗

(1).不登陆的时候改变密码

    登录时有大概报那样的错:E中华VRO福睿斯 二〇〇一 (HY000): Can‘t connect to
local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘
(2),原因是/var/lib/mysql的访问权限难题。上面的命令把/var/lib/mysql的拥有者改为眼下用户:

            update user set
password=password(‘密码’) where user=’用户名’ ; 

mysqladmin -uroot -p旧密码 password 新密码(最终不要加分号)

  e)  $ sudo chown -R root:root /var/lib/mysql

              然后,看到 0
行被更新???

(2).登陆数据库后,对点名应用实行密码修改

    重启mysql服务

  然后怀着疑虑人生的态势搜了很久,前一页的博客都以相同的,唉~

方法一: use mysql;

    $ service mysqld restart

  一通乱操作之后依然不曾x用,都以说改密码,还有扯php的。。。

update user set password=PASSWO翼虎D(‘新密码’) where user =
‘root’;(修改实现之后要重启mysql服务(net start|stop mysql));

  f)  接下去登录重置密码:

  

flush privileges;// 刷新权限

          $ mysql -u root  //直接回车进入mysql控制台

 

方法二: set password = password(‘new password’);

          mysql > use mysql;

  后来无形中中跻身stackoverflower,然后一看提问,发现碰着的事态和自我一模一样:

flush privileges;

          mysql >set password=password(‘123456′) where
user=’root’;也许改变 update user set password=password(‘123456′) where
user=’root’;

威尼斯人线上娱乐 4

方法三. set password for ‘username’@’hostname’=password(“new
password”);(一流用户(root)下)

             mysql > exit;

  下一场回答是:

方法四(在忘记root密码,登陆不进来的处境下)

 

 

先结束服务

修改mysql数据库密码的4种艺术

  威尼斯人线上娱乐 5

net stop mysql

方法1: 用SET PASSWORD命令
先是登录MySQL。
格式:mysql> set password for 用户名@localhost =
password(‘新密码’);
例子:mysql> set password for root@localhost = password(‘123’);

    忽略便是您有四个用户名为空的账户,mysql会先匹配它,然后就直接提示您密码错误,删掉那几个匿名用户,然后实施
FLUSH PENCOREIVILEGES;

mysqld –defaults-file=”你电脑的mysql的ini文件的路线” –console
–skip-grant-tables

方法2:用mysqladmin
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:mysqladmin -uroot -p123456 password 123

        

假如不知道路径,能够在劳动中找到Mysql,右击属性,属性中有个可执行文件能够找见。

办法3:用UPDATE间接编辑user表
首首先登场录MySQL。
mysql> use mysql;
mysql> update user set password=password(‘123′) where user=’root’ and
host=’localhost’;
mysql> flush privileges;

 

ps: 那命令能够跳过权力安检

措施4:在忘记root密码的时候,能够这么
以windows为例:

    就能够心旷神怡的登陆成功,初叶光荣的增加和删除改查之旅了

接下来再打开第二个黑窗口

  1. 关门正在周转的MySQL服务。
  2. 打开DOS窗口,转到mysql\bin目录。
  3. 输入mysqld –skip-grant-tables 回车。–skip-grant-tables
    的意味是开发银行MySQL服务的时候跳过权限表认证。
    4.
    再开二个DOS窗口(因为刚刚尤其DOS窗口已经不可能动了),转到mysql\bin目录。
  4. 输入mysql回车,假使成功,将应运而生MySQL提醒符 >。
  5. 连日权限数据库: use mysql; 。
  6. 改密码:update user set password=password(“123″) where
    user=”root”;(别忘了最终加分号) 。
  7. 刷新权限(必须步骤):flush privileges; 。
  8. 退出 quit。
  9. 撤废系统,再进入,使用用户名root和刚刚设置的新密码123报到。 

 

直白登陆:mysql -uroot -p

 

    威尼斯人线上娱乐 6

提示enter password –直接回车连接成功

mysql用户操作

 

方法五:还是能够透过创立账户的语句来修改密码:

① 、成立用户

  

grant 权限(增加和删除改查) on database_name to
‘username’@’hostname(一般是localhost)’ identified by “密码”;

命令:CREATE USER ‘username’@’host’ IDENTIFIED BY ‘password’; 

 

备注:username – 你将创设的用户名, host –
钦定该用户在哪些主机上得以登陆,倘诺是本地用户可用localhost,
假诺想让该用户能够从随机远程主机登陆,能够选择通配符%. password –
该用户的登陆密码,密码能够为空,假使为空则该用户能够不要求密码登陆服务器.

删去用户:

二、授权

drop user ‘username’@’hostname’;

命令:GRANT privileges ON databasename.tablename TO ‘username’@’host’

3.MySQL权力管理

备考: privileges – 用户的操作权限,如SELECT , INSEWranglerT , UPDATE
等(详细列表见该文最前边).借使要授予所的权能则运用ALL.;databasename –
数据库名,tablename-表名,假使要给以该用户对具备数据库和表的对应操作权限则可用*表示,
如*. *    username代表你创设的用户名 host代表哪个主机

在开创用户时赋给用户的权限.

三 、设置与改观用户密码

 

指令:SET PASSWOKugaD FO牧马人 ‘username’@’host’ =
PASSWORAV4D(‘newpassword’);假如是当下登陆用户用SET PASSWO帕杰罗D =
PASSWOLX570D(“newpassword”);

例子: SET PASSWORD FOR ‘test’@’%’ = PASSWORD(“123456”); 

四.撤回用户权限
命令: REVOKE privilege ON databasename.tablename FROM
‘username’@’host’;

表达: privilege, databasename, tablename – 同授权部分.

例子: REVOKE SELECT ON *.* FROM ‘pig’@’%’;

瞩目: 若是你在给用户’pig’@’%’授权的时候是如此的(或类似的):GRANT SELECT
ON test.user TO ‘pig’@’%’, 则在接纳REVOKE SELECT ON *.* FROM
‘pig’@’%’;命令并无法收回该用户对test数据库中user表的SELECT
操作.相反,假使授权使用的是GRANT SELECT ON *.* TO ‘pig’@’%’;则REVOKE
SELECT ON test.user FROM
‘pig’@’%’;命令也不能够收回该用户对test数据库中user表的Select 权限. 

五.剔除用户
命令: DROP USER ‘username’@’host’; 

ALTER Allows use of ALTER TABLE.
ALTER ROUTINE Alters or drops stored routines.
CREATE Allows use of CREATE TABLE.
CREATE ROUTINE Creates stored routines.
CREATE TEMPORARY TABLE Allows use of CREATE TEMPORARY TABLE.
CREATE USER Allows use of CREATE USER, DROP USER, RENAME USER, and REVOKE ALL PRIVILEGES.
CREATE VIEW Allows use of CREATE VIEW.
DELETE Allows use of DELETE.
DROP Allows use of DROP TABLE.
EXECUTE Allows the user to run stored routines.
FILE Allows use of SELECTINTO OUTFILE and LOAD DATA INFILE.
INDEX Allows use of CREATE INDEX and DROP INDEX.
INSERT Allows use of INSERT.
LOCK TABLES Allows use of LOCK TABLES on tables for which the user also has SELECT privileges.
PROCESS Allows use of SHOW FULL PROCESSLIST.
RELOAD Allows use of FLUSH.
REPLICATION Allows the user to ask where slave or master
CLIENT servers are.
REPLICATION SLAVE Needed for replication slaves.
SELECT Allows use of SELECT.
SHOW DATABASES Allows use of SHOW DATABASES.
SHOW VIEW Allows use of SHOW CREATE VIEW.
SHUTDOWN Allows use of mysqladmin shutdown.
SUPER Allows use of CHANGE MASTER, KILL, PURGE MASTER LOGS, and SET GLOBAL SQL statements. Allows mysqladmin debug command. Allows one extra connection to be made if maximum connections are reached.
UPDATE Allows use of UPDATE.
USAGE Allows connection without any specific privileges.


相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图