为root用户设置初始密码

mysqladmin -u root password 密码(单实例)
mysqladmin -u root password 密码 -S /data/3306/mysql.sock(多实例)

修改root用户的密码

1.系统命令修改

mysqladmin -u root -p旧密码 password 新密码(单实例)

mysqladmin -u root -p旧密码 password 新密码 -S /data/3306/mysql.sock(多实例)

2.sql语句修改

update mysql.user set password=password('新密码') where user='root' and host='localhost';(注意密码需使用加密函数,字符串需用引号,设置完后需flush将新密码从内存写入数据库)

flush privileges;

3.数据库中直接修改

set password=password('新密码')(一般安装完成后采用,不适用于--skip-grant-tables)
flush privileges;

单实例root密码丢失解决方法

1.停止mysql,/etc/init.d/mysqld stop

2.跳过授权启动mysql,mysqld_safe --skip-grant-tables --user=mysql &

3.直接mysql命令登录数据库

4.使用update更新mysql.user表,并刷新权限,退出mysql

5.停止mysql,mysqladmin -uroot -p新设置的root密码 shutsdown(没有用mysqld启动,所以无法使用mysqld停止)

6.启动mysql,/etc/init.d/mysqld start

多实例root密码丢失解决方法

1.停止mysql,killall mysqld

2.跳过授权启动mysql,mysqld_safe --default-file=/data/3306/my.cnf --skip-grant-tables  &(需指定默认配置文件,且放在skip-grant-tables前面)

3.登录数据库,mysql -uroot -p -S /data/3306/mysql.sock

4.使用update更新mysql.user表,并刷新权限,退出mysql

5.停止mysql,killall mysqld

6.启动mysql,/data/3306/mysql start

创建与root权限相同的system用户

mysql>grant all privileges on *.* to system@'localhost' identified by 'oldboy' with grant option;(密码要用单引号引起来)

mysql>quit

[root@oldboy ~]#mysql -usystem -poldboy

mysql>

新建普通用户用户(创建后需要flush privileges)

1.sql中create user创建

mysql> create user 'phh'@'localhost' identified by 'phh';(注意三个引号要加上)

2.sql中更新mysql.user表

mysql> insert into mysql.user(host,user,password,ssl_cipher,x509_issuer,x509_subject) values('localhost','phh1',password('phh1'),'','','');

3.mysql中使用grant创建

mysql>grant select on mysql.user to 'phh2'@'localhost' identified by ‘phh2’;

(grant 权限 on 库.表 to ‘用户’@’主机’ identified by ‘password’)

删除普通用户(删除后需要flush privileges)

1.mysql中drop user

mysql> drop user 'phh2'@'localhost';

2. mysql中使用delete删除mysql.user

mysql> delete from mysql.user where user='phh1';

(主机名大写使用drop user可能不能删除用户,这是需要使用delete方法删除)

mysql用户的增删与密码丢失问题的更多相关文章

  1. Mysql用户、权限、密码管理

    一.用户管理 默认:用户root 创建用户: use mysql; create user 'alex'@'192.168.193.200' identified by '123456'; 创建了al ...

  2. sa账户和密码丢失如何找回

    来自:http://www.cnblogs.com/xred/archive/2012/03/09/2386185.html 在网上看了很多如何修改SQLServer2005的密码的方法.大多数都是转 ...

  3. MySQL 5.6 root密码丢失,使用mysqld --skip-grant-tables

    MySQL 5.6 root密码丢失,(window平台)使用mysqld –skip-grant-tables启动MySQL服务,出现警告: 1 [Warning] TIMESTAMP with i ...

  4. 库增删该查,表增删该查,记录增删该查,表与表关系(多对多,多对一,一对一),mysql用户管理

    库增删该查 增加库 create database db1 create database db1 charset="gbk 查看库 show databases 查看所有库 show cr ...

  5. MySQL 用户登录密码和远程登录权限问题

    1.mysql数据库,忘记root用户登录密码. 解决如下: a.重置密码 #/etc/init.d/mysqld stop #mysqld_safe --user=mysql --skip-gran ...

  6. mysql用户密码修改,用户添加、删除及设置权限

    一下的示例所用用户名和密码为:test,111111 Mysql密码修改: Mysql修改密码需要root的权限,先执行mysql -uroot -p(密码); 1)使用set password方式来 ...

  7. Windows如何修改MySQL用户root密码

    听语音 浏览:16925 | 更新:2015-06-12 14:49 | 标签:windows 1 2 3 4 5 6 分步阅读 MySQL是一个关系型数据库管理系统,在 WEB 应用方面 MySQL ...

  8. mysql root 密码丢失问题

    root密码丢失,我们需要将mysql以不检查权限的方式重新启动. 在mysql的配置文件(/etc/my.cnf)中,[mysqld]下添加一句skip-grant-tables,然后重新启动服务, ...

  9. linux中重置服务器的mysql用户密码

    本文章前提条件是自己经把mysql登录密码给忘记了,这个时间我们解决方法有很多,重新安装mysql数据库一切重来,另一种是通过下面文章重新设置root密码,下面我们一起来看看方法二吧.     最 近 ...

随机推荐

  1. Let Encrypt延期(转自虞大胆的叽叽喳喳)

    前几天发现我的 letsencrypt 通配符证书快过期了,想为这两张证书续期(renew). 首先运行命令查看我的所有证书: $ certbot-auto certificates 其中证书名 si ...

  2. Python的原型开发带来的关于Mock的思考

    Python非常受欢迎,主要原因之一它包包多,能让你快速实现一个功能,并且很方便运行并看到效果,因此,它非常适合做原型开发. 什么是原型开发? 原型开发就是实现一个简单版本的开发. 在使用其他高级语言 ...

  3. git push 提交某一个commit

    (以下情况是我们的一位开发小哥哥遇到了提交失败,来找我,我给他解决的过程,以前我也没遇到,所以记录下来) 我们会遇到这样的情况,在develop分支上,第一天修改的文件,已经执行了git commit ...

  4. Node.js进击基础一(http)

    URL:统一资源定位符,偏重定位,是URI的子集,例如网址.URL一定是URI,但URI 不一定是URL.规则:只能用英文阿拉伯数字某些符号等,如果有文字就必须编码. URI:统一资源标识符,偏重标识 ...

  5. for in //for of //forEach //map三种对比

    遍历Array可以采用下标循环,遍历Map和Set就无法使用下标.为了统一集合类型,ES6标准引入了新的iterable类型,Array.Map和Set都属于iterable类型. 具有iterabl ...

  6. Oracle 11g快速收集全库统计信息

    环境:Oracle 11.2.0.4 采用并行的方式,快速收集全库统计信息,多用于跨版本升级之后,对全库的统计信息重新进行快速收集: --开启计时 set timing on --设置并行收集 exe ...

  7. linux 小笔记

    //强杀pid2306的进程 kill -9 2306 //查看80端口占用情况 lsof -i :80 //杀死mysql的所有进程 sudo killall mysqld //关闭占用80端口的所 ...

  8. MS16-032 漏洞复现

    exploit-db的详情:  https://www.exploit-db.com/exploits/39574/ Windows: Secondary Logon Standard Handles ...

  9. 不同版本Hibernate.获取SessionFactory的方式

    不同版本Hibernate.获取SessionFactory的方式 Hibernate 版本说明: 我当前使用的是 Hibernate 5.x ,(hibernate-release-5.3.6.Fi ...

  10. db2修改表结构,增加列,删除列等

    增加一列:ALTER TABLE tbname ADD COLUMN columnName datatype; 增加多列:ALTER TABLE tbname ADD COLUMN columnNam ...