4、mysql登录密码修改和找回
操作适合5.1-5.5;当前的环境是5.5的环境;
4.1、mysql启动的原理:
mysqld_safe -> my.cnf ->mysql.sock
http://blog.51cto.com/oldboy/1431161
4.2、登录mysql深入讲解:
1、mysql单实例登录:
2、mysql多实例登录:
3、mysql登录安全设置:
shell脚本加密,shell脚本root、700;
数据库强制不记录敏感字符:
echo 'HISTCONTROL=ignorespace' >>/etc/profile
history -d 2
history -c
> /root/.bash_history
>/root/.mysql_history
区分测试环境和生产环境(防止操作错误):
PS1="\[\e[32;1m\][\u@\h \W]\\$\[\e[0m\]" #绿色用于生产环境;
PS1="\[\e[31;1m\][\u@\h \W]\\$\[\e[0m\]" #红色用于测试环境;
以上是临时生效,要永久生效,加入到/etc/profile中即可;
4、mysql退出:
4.3、使用mysql的帮助命令help:
mysql> help show grants;
4.4、修改mysql密码多种方法:
1、安全策略:
2、未登录mysql修改密码:
1、单实例:
(1)创建密码:
mysqladmin -uroot password '123456'
(2)修改密码:
mysqladmin -uroot -p123456 password '123'
2、多实例:
(1)创建密码:
mysqladmin -uroot password '123456' -S /data/3306/mysql.sock
(2)修改密码:
mysqladmin -uroot -p123456 password '123' -S /data/3306/mysql.sock
3、登录mysql后修改密码:
mysql> select user,host,password from mysql.user;
+------+-----------+-------------------------------------------+
| user | host | password |
+------+-----------+-------------------------------------------+
| root | localhost | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| root | backup | |
| root | 127.0.0.1 | |
| root | ::1 | |
| | localhost | |
| | backup | |
+------+-----------+-------------------------------------------+
6 rows in set (0.00 sec)
1、set方法(适合普通修改用户密码):
#只修改当前登录用户的密码;
mysql> set password=password('123456');
#将数据从内存刷新到mysql.user表中;
mysql> flush privileges;
2、update方法(适合--skip-grant-tables方式找回mysql密码):
mysql> update mysql.user set password=password('123456') where user='root';
#password(123456):表示对密码进行加密,否则不能用,如果不指定用户会导致更改所有用户的密码;
mysql> flush privileges;
4.5、找回丢失的mysql root密码:
1、单实例:
(1)首先停止mysql服务:
[root@db01 ~]# /etc/init.d/mysqld stop
Shutting down MySQL. SUCCESS!
(2)使用--skip-grant-tables启动mysql,忽略授权登录验证;
[root@db01 ~]# mysqld_safe --skip-grant-tables --user=mysql &
[1] 1652
[root@db01 ~]# 190218 10:14:13 mysqld_safe Logging to '/application/mysql/data/db01.err'.
190218 10:14:13 mysqld_safe Starting mysqld daemon with databases from /application/mysql/data
[root@db01 ~]# mysql #登录mysql不需要密码;
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.62 MySQL Community Server (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
(3)修改密码:
使用update方法修改密码,不能够使用system mysqladmin的方法,因为需要旧密码,而此时已经
忽略了mysql用户授权表,不能够使用;
mysql> update mysql.user set password=password('123456') where user='root' and host='localhost';
mysql> flush privileges;
mysql> exit;
(4)停止mysql服务:
不能够使用/etc/init.d/mysqld stop 因为使用的--skip-grant-tables启动的mysql服务,脚本找不到pid文件;
[root@db01 ~]# mysqladmin -uroot -p123456 shutdown
[root@db01 ~]# n190218 10:27:03 mysqld_safe mysqld from pid file /application/mysql/data/db01.pid ended
[1]+ Done mysqld_safe --skip-grant-tables --user=mysql
(5)重新启动并登录mysql服务:
/etc/init.d/mysqld start
mysql -uroot -p123456
2、多实例:
(1)关闭mysql:
killall mysqld
(2)跳过授权表登录:
mysqld_safe --defaults-files=/data/3306/my.cnf --skip-grant-tables --user=mysql &
(3)mysql登录:
mysql -S /data/3306/mysql.sock
(4)update方法更改密码;
mysql> update mysql.user set password=password('123456') where user='root' and host='localhost';
mysql> flush privileges;
mysql> exit;
(5)停止mysql服务:
mysqladmin -uroot -p123456 -S /data/3306/mysql.sock shutdown
(6)启动mysql服务并用新的密码登录:
/data/3306/mysql start
mysql -uroot -p123456 -S /data/3306/mysql.sock
3、报错解决:
1、安装二进制mysql时没有替换mysql安装路径/bin/mysqld_safe文件中/usr/local/mysql:
2、多实例没有指定sock地址:
4.6、企业安装mysql常使用的方法:
4、mysql登录密码修改和找回的更多相关文章
- mac下修改mysql登录密码
mysql版本5.7.9 在mac终端下修改mysql用户登录密码 终端命令如下: update mysql.user set authentication_string=PASSWORD(" ...
- 忘记mysql root 密码修改小技巧
首先我说一下我的情况,我并不是忘记了我的root密码,只不过是我在使用phpmyadmin的时候更改密码的时候选择了如图1 的这个方法将密码加密并更改了,然后就再次登录的时候登录不上,所以对于菜鸟级的 ...
- mysql用户密码修改,用户添加、删除及设置权限
一下的示例所用用户名和密码为:test,111111 Mysql密码修改: Mysql修改密码需要root的权限,先执行mysql -uroot -p(密码); 1)使用set password方式来 ...
- 忘记Mysql登录密码
1,使用安全模式跳过验证: 如果 Mysql在运行,Kill掉. 如果mysqld_safe无法启动,可用管理员权限sudo . 2,本地登录: 启动Mysql 3,修改密码: 5.7之后, 更改密码 ...
- mysql登录密码相关
设置root登录密码 方法一:用root 进入mysql后 mysql>set password =password('你的密码'); mysql>flush privileges; 方法 ...
- 更改Mysql登录密码
版本号49之前的跨域设置 在Windows命令行下修改mysql数据库密码步骤如下: 1.通过dos命令进入mysql的bin目录: 2.输入“mysql -uroot -p”,回车进入mysql命令 ...
- mysql忘记密码/修改密码
关键词:忘记密码,修改密码,mysql忘记密码,mysql修改密码 转自:https://www.cnblogs.com/jdxn/p/6847089.html 方法1: 用SET PASSWORD命 ...
- linux下修改mysql登录密码
一.修改mysql密码 1.停止服务 /etc/init.d/mysqld stop 2.以不检查权限的方式启动 /etc/init.d/mysqld --skip-grant- ...
- 修改mysql登录密码
通过cmd 登录进mysql系统后,输入 : set password for root@localhost = password('admin'); 其中admin 为新密码: 导入外部数据库 ...
随机推荐
- [DB] ElasticSearch
安装 root用户解压,修改配置文件 创建新用户es 修改文件权限:chown -R es:es /kkb/install/elasticsearch-6.7.0/ 用es用户启动ElasticSea ...
- 强哥ThinkPHP学习笔记
TP框架:1.模板引擎2.MVC设计模式3.常用操作类 模板引擎和框架区别1.模板引擎只是框架中用来做php和html分离 MVC设计模式M model 数据模型V view 视图C control ...
- Web网站实现用户认证访问(加密访问)
Web网站实现用户认证访问,有效减少流量的访问,具体的实现步骤如下: 我们使用httpd作为测试对象,体现安装好httpd服务,并且可以在浏览器访问测试首页(可以关闭防火墙:如果不关闭防火墙,则需要开 ...
- linux进阶之gitlab仓库搭建及免密使用
一.Gitlab简介 GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务. 可通过Web界面进行访问公开的或者私人项目.它拥有与Github类 ...
- CGI开发-(转自 jemofh159)
随着Internet技术的兴起,在嵌入式设备的管理与交互中,基于Web方式的应用成为目前的主流,这种程序结构也就是大家非常熟悉的B/S结构,即在嵌入式设备上运行一个支持脚本或CGI功能的Web服务器, ...
- 3 当某个应用的CPU使用达到100%,该怎么办?
你最常用什么指标来描述系统的 CPU 性能呢?我想你的答案,可能不是平均负载,也不是 CPU 上下文切换,而是另一个更直观的指标-- CPU 使用率.CPU 使用率是单位时间内 CPU 使用情况的统计 ...
- 用JILINK 下载HEX文件
https://wenku.baidu.com/view/f51300f55f0e7cd1842536e1.html
- Stream中的Peek操作
1.引言 如果你试图对流操作中的流水线进行调试, 了解stream流水线每个操作之前和操作之后的中间值, 该如何去做? 首先我们看一个例子, 使用forEach将流操作的结果打印出来. 1 /** 2 ...
- MarkDown笔记二
表格 列1|列2|列3 --|--|-- 内容1|内容2|内容3 下例冒号在左为左对齐(默认),在右为右对齐,在俩侧为居中对齐 | 左对齐 | 右对齐 | 居中对齐 | | :-----| ----: ...
- Navicat Premium 15 linux 安装与激活 ArchLinux 2021
查看了很多教程花了半小时才弄好可真不容易 参考https://github.com/orginly/navicat-keygen 下载地址 http://www.navicat.com.cn/down ...