操作适合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登录密码修改和找回的更多相关文章

  1. mac下修改mysql登录密码

    mysql版本5.7.9 在mac终端下修改mysql用户登录密码 终端命令如下: update mysql.user set authentication_string=PASSWORD(" ...

  2. 忘记mysql root 密码修改小技巧

    首先我说一下我的情况,我并不是忘记了我的root密码,只不过是我在使用phpmyadmin的时候更改密码的时候选择了如图1 的这个方法将密码加密并更改了,然后就再次登录的时候登录不上,所以对于菜鸟级的 ...

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

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

  4. 忘记Mysql登录密码

    1,使用安全模式跳过验证: 如果 Mysql在运行,Kill掉. 如果mysqld_safe无法启动,可用管理员权限sudo . 2,本地登录: 启动Mysql 3,修改密码: 5.7之后, 更改密码 ...

  5. mysql登录密码相关

    设置root登录密码 方法一:用root 进入mysql后 mysql>set password =password('你的密码'); mysql>flush privileges; 方法 ...

  6. 更改Mysql登录密码

    版本号49之前的跨域设置 在Windows命令行下修改mysql数据库密码步骤如下: 1.通过dos命令进入mysql的bin目录: 2.输入“mysql -uroot -p”,回车进入mysql命令 ...

  7. mysql忘记密码/修改密码

    关键词:忘记密码,修改密码,mysql忘记密码,mysql修改密码 转自:https://www.cnblogs.com/jdxn/p/6847089.html 方法1: 用SET PASSWORD命 ...

  8. linux下修改mysql登录密码

    一.修改mysql密码 1.停止服务      /etc/init.d/mysqld stop   2.以不检查权限的方式启动     /etc/init.d/mysqld --skip-grant- ...

  9. 修改mysql登录密码

    通过cmd   登录进mysql系统后,输入 : set password for root@localhost = password('admin'); 其中admin  为新密码: 导入外部数据库 ...

随机推荐

  1. Vim删除空行

    Vim删除空行 1 Vim删除空行 打开vim输入:g/^$/d :g将在与正则表达式匹配的行上执行命令. 正则表达式是'空行',命令是:d (删除)

  2. unity ab包打包和加载的简单学习示例

    闲着没事结合项目看了下unity AssetBundle打包和使用,写了一些测试例子,需要的可以拿去,导入一个空项目即可 链接:https://pan.baidu.com/s/1H85dnMNkRoW ...

  3. 动态更换animator的animatorcontroller

    你可以这样 Animator animator = this.gameObject.GetComponent<Animator>(); animator.runtimeAnimatorCo ...

  4. Elasticserch与Elasticsearch_dsl用法

    Elasticserch与Elasticsearch_dsl用法 Elasticsearch_dsl::https://elasticsearch-dsl.readthedocs.io/en/late ...

  5. 台积电5nm光刻技术

    台积电5nm光刻技术 在IEEE IEDM会议上,台积电发表了一篇论文,概述了其5nm工艺的初步成果.对于目前使用N7或N7P工艺的客户来说,下一步将会采用此工艺,因为这两种工艺共享了一些设计规则.新 ...

  6. GPU上创建目标检测Pipeline管道

    GPU上创建目标检测Pipeline管道 Creating an Object Detection Pipeline for GPUs 今年3月早些时候,展示了retinanet示例,这是一个开源示例 ...

  7. Single Shot Multibox Detection (SSD)实战(下)

    Single Shot Multibox Detection (SSD)实战(下) 2. Training 将逐步解释如何训练SSD模型进行目标检测. 2.1. Data Reading and In ...

  8. Redux/Mobx/Akita/Vuex对比 - 选择更适合低代码场景的状态管理方案

    近期准备开发一个数据分析 SDK,定位是作为数据中台向外输出数据分析能力的载体,前端的功能表现类似低代码平台的各种拖拉拽.作为中台能力的载体,SDK 未来很大概率会需要支持多种视图层框架,比如Vue2 ...

  9. fiddler选项卡-Composer(构建请求)

    Composer Composer支持手动构建http.https和ftp请求.点到composer选项卡界面,我们可以看到下面有一串英文. use this page to compose a Re ...

  10. 学废了系列 - WebGIS vs WebGL图形编程

    目前工作中有不少涉及到地图的项目,我参加了几次技术评审,前端伙伴们在 WebGIS 方面的知识储备稍有不足,这次分享的主要目的是科普一些在前端领域比较常用的 WebGIS 知识.另外,我之前的工作中积 ...