GVKun编程网logo

MySQL忘记密码重置密码(mysql忘记密码重置密码怎么办)

9

对于想了解MySQL忘记密码重置密码的读者,本文将提供新的信息,我们将详细介绍mysql忘记密码重置密码怎么办,并且为您提供关于Django通用类视图实现忘记密码重置密码功能、Linux系统MySQL

对于想了解MySQL忘记密码重置密码的读者,本文将提供新的信息,我们将详细介绍mysql忘记密码重置密码怎么办,并且为您提供关于Django通用类视图实现忘记密码重置密码功能、Linux系统MySQL忘记密码,重置密码,忽略表名、列名大小写的方法、Mac mysql忘记密码、MySQL 8.0 忘记密码,重置密码,允许远程访问的有价值信息。

本文目录一览:

MySQL忘记密码重置密码(mysql忘记密码重置密码怎么办)

MySQL忘记密码重置密码(mysql忘记密码重置密码怎么办)

有时候忘记了密码需要重置密码,或者是连接数据库报错的时候可以尝试重置密码后再进行连接

启动MysqL报错:ERROR 2003 (HY000): Can‘t connect to MysqL server on ‘localhost‘ (10061)

 

 首先确保 MysqL 服务是关闭状态,关闭服务的方式:

1、用命令 net stop MysqL

以管理员身份运行cmd后,先进入MysqL的下载bin目录后,再执行停止服务命令

 

 

2、进入计算机服务来停止

我的电脑--右键管理

右键服务,停止服务

 

 

 

 

接着输入MysqLd --console --skip-grant-tables --shared-memory命令来免密启动服务。

1 MysqLd --console --skip-grant-tables --shared-memory

 

然后再打开一个 cmd 窗口(注意是另外打开一个,当前打开的不要关闭),输入MysqL -uroot -p命令,并点击两次回车即可免密登录(或者直接输入MysqL 并回车也行)。

 

修改密码。

首先使用flush privileges; 命令刷新权限。

1 flush privileges;

然后直接使用set password for root@localhost = '新密码';命令设置密码即可。

1 set password for root@localhost = '新密码';

Django通用类视图实现忘记密码重置密码功能

Django通用类视图实现忘记密码重置密码功能

前言

在Django中有大量的通用类视图,例如ListView,DetailView,CreateView,UpdateView等等,将所有重复的增删改查代码抽象成一个通用类,只需要配置极少量的代码即可实现功能。

使用通用类视图完成找回密码功能

首先引入

from django.contrib.auth.views import PasswordResetView, PasswordResetConfirmView, \
    PasswordResetDoneView, PasswordChangeView, PasswordChangeDoneView, \
    PasswordResetCompleteView

配置如下:

class MyPasswordResetView(PasswordResetView):
    """重置密码视图"""
    template_name = ''users/registration/forget_pwd.html''
    form_class = ForgetForm
    success_url = reverse_lazy("users:password_reset_done")
    email_template_name = ''users/registration/password_reset_email.html''


class MyPasswordResetConfirmView(PasswordResetConfirmView):
    """重置密码页面,输入两次密码"""
    template_name = ''users/registration/password_change_form.html''
    success_url = reverse_lazy(''users:password_reset_complete'')


class MyPasswordResetDoneView(PasswordResetDoneView):
    """发送确认重置邮件"""
    template_name = ''users/registration/password_reset_done.html''


class MyPasswordResetCompleteView(PasswordResetCompleteView):
    """完成重置密码"""
    template_name = ''users/registration/password_change_done.html''

其中忘记密码,填写邮箱的模板forget_pwd.html模板如下:

          <form method="post"action="{% url ''users:password_reset'' %}">
            <div>
              <input id="login-username" type="text" name="email" required data-msg="请输入您的邮箱">
              <label for="login-username">邮箱</label>
              {% if form.errors %}
                <div>邮箱输入错误</div>
              {% endif %}
            </div>

              {% csrf_token %}
              <button type="submit" id="login" href="#">发送确认邮件</button>
            <!-- This should be submit button but I replaced it with <a> for demo purposes-->
          </form>

其中输入新密码模板password_change_form.html页面如下:

<form id="form" method="post">
	{% csrf_token %}
	{{ form|crispy }}
	<div>
	<button type="submit">确认更改</button>
	</div>
</form>

其中重置密码邮件发送成功的模板password_reset_done.html如下:

    <div>
      <div>
        <div>
          <h1>重置密码邮件发送成功!</h1>

        </div>
      </div>
    </div>

其中密码重置成功password_change_done.html如下:

  <div>
    <div>
      <div>
        <h1>重置密码成功!</h1>
        <a href="{% url ''index'' %}">回到首页</a>
      </div>
    </div>
  </div>

最后配置路由

path(''password/reset/'', view=MyPasswordResetView.as_view(), name=''password_reset''), # password_reset
path(''password/reset/done/'', MyPasswordResetDoneView.as_view(), name=''password_reset_done''),  # password_reset_done

url(r''^reset/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/$'',
    view=MyPasswordResetConfirmView.as_view(), name=''password_reset_confirm''), # reset
path(''reset/done/'', MyPasswordResetCompleteView.as_view(), name=''password_reset_complete''),

效果如下: 在这里插入图片描述 在这里插入图片描述

在这里插入图片描述

Linux系统MySQL忘记密码,重置密码,忽略表名、列名大小写的方法

Linux系统MySQL忘记密码,重置密码,忽略表名、列名大小写的方法

在linunx系统刚装的MySQL,忘记曾经设置的密码或者安装过程无法设置密码时,试图用常用的密码猜测,如:1,11,111,1111,11111,111111,123456,000000,1234321等等最简单的默认密码来试探,结果试遍了也不对,还是无法进入mysql。原因可能是你当初设置的密码比较复杂后来给忘了,更可能的原因是你安装过程中没允许设置密码,这样的密码一般是MySQL随机生成的一大串由大小写字母、数字和符号组合成的复杂密码。这样的密码不需要白费力去试探了,这就需要通过特殊的方式来解决,就是改配置文件/etc/my.cnf。

步骤:

1.输入su -及密码,进入root权限。

2.停止MySQL,输入service mysqld stop

3.输入vi /etc/my.cnf,进入配置文件my.cnf进行编辑

4.找到[mysqld],在下面加入一行skip-grant-tables=1

5.Linux系统刚安装的mysql一般对数据库的表名大小写是敏感的,可在[mysqld]下再加入一行

lower_case_table_names=1,表示忽略大小写,等于0则代表对大小写敏感

6.光标移到最下,输入:wq(有冒号)自动保存退出

7.启动mysql,输入service mysqld start

8.输入mysql -uroot -p,提示输出密码时,直接回车不管,就可以进入

9.输入use mysql;

10.改密码。输入update user set password=PASSWORD(''12345678'') where user="root";    ---将root密码设置为12345678

11.输入exit,退出

12.别忘了把skip-grant-tables=1注掉,再次输入vi /etc/my.cnf,找到刚才加的skip-grant-tables=1前面加#注掉,:wq,退保存出。

13.重启mysql,service mysql restart,

14.再次输入mysql -uroot -p,输入密码12345678,登录成功!

注:

linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写。

用root帐号登录后,在/etc/my.cnf 中的[mysqld]后添加添加lower_case_table_names=1,重启MYSQL服务,这时已设置成功:不区分表名的大小写。

其中 0:区分大小写,1:不区分大小写

MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:

   1、数据库名与表名是严格区分大小写的;

   2、表的别名是严格区分大小写的;

   3、列名与列的别名在所有的情况下均是忽略大小写的;

   4、变量名也是严格区分大小写的;

MySQL在Windows下都不区分大小写。

以上所述是小编给大家介绍的Linux系统MySQL忘记密码,重置密码,忽略表名、列名大小写,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

您可能感兴趣的文章:
  • MySQL大小写敏感的注意事项
  • MySQL 字符类型大小写敏感
  • mysql如何设置不区分大小写
  • MySQL大小写敏感导致的问题分析
  • 解决MySQl查询不区分大小写的方法讲解
  • MySQL数据库大小写敏感的问题
  • mysql表名忽略大小写配置方法详解
  • 详解MySQL查询时区分字符串中字母大小写的方法
  • MySql查询不区分大小写解决方案(两种)
  • MySQL库表名大小写的选择

Mac mysql忘记密码

Mac mysql忘记密码

更改my.cnf配置文件

  • 找到my.cnf的位置,不同电脑可能不大一样,我这里是/usr/local/etc/my.cnf,也有可能是/etc/my.cnf
  • 修改my.cnf
vim my.cnf
  • 在[mysqld]下添加skip-grant-tables,然后保存并退出

image.png

  • 重启mysql服务

找到mysql服务路径,我这里是/usr/local/Cellar/mysql/8.0.17/support-files/mysql.server

cd /usr/local/Cellar/mysql/8.0.17/support-files

mysql.server restart

修改密码

  • 重启以后,执行mysql -uroot -p(不需要密码直接Enter)进入mysql命令行

image.png

  • 修改密码

执行

mysql> update user set password=password("*******") where user="*******";  #修改密码报错

如果上面报错ERROR 1054 (42S22): Unknown column ''password'' in ''field list'',

(错误的原因是 5.7版本下的mysql数据库下没有password这个字段,password字段改成了authentication_string)

请尝试以下语句

mysql> update mysql.user set authentication_string=password(''*******'') where user=''*******'';  #修改密码成功
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 1

如果以上命令还是不行,那么请尝试

mysql> flush privileges;  #立即生效
mysql> ALTER user ''root''@''localhost'' IDENTIFIED BY ''12345678'';
  • 修改立即生效
mysql> flush privileges;  #立即生效
Query OK, 0 rows affected (0.00 sec)

mysql> quit  #退出mysql -- 也可以使用 exit;命令
Bye

删除skip-grant-tables

重新执行vim /etc/my.cnf,然后删除刚刚加入的 skip-grant-tables,重新启动mysql

参考链接

  • https://www.jianshu.com/p/8b8a2d0a2051
  • https://www.cnblogs.com/qianzf/p/7089197.html
  • https://www.cnblogs.com/xingxiangyi/p/9334694.html

MySQL 8.0 忘记密码,重置密码,允许远程访问

MySQL 8.0 忘记密码,重置密码,允许远程访问

忘记密码使用-init-file重置MySql的 root密码

1.重置密码

1.登录mysql所在的机子,创建一个本地文件

vim /init-file.txt

内容

ALTER USER ''root''@''localhost'' IDENTIFIED BY ''new_password'';

2.关闭mysql服务

systemctl stop mysqld.service 

3.使用mysql命令重置密码

mysqld --user=mysql --init-file=/init-file.txt --console

可能输入之后会一直卡住,可以切换一个新的窗口

4.重启mysql

 systemctl restart mysqld.service 

5.输入新密码

mysql -u root -p

2.修改远程连接

1.切换到 mysql库

use mysql

2.修改连接权限

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

3.授权远程连接

grant all on *.* to ''root''@''%'';

4.刷新权限

flush privileges;

 

今天关于MySQL忘记密码重置密码mysql忘记密码重置密码怎么办的介绍到此结束,谢谢您的阅读,有关Django通用类视图实现忘记密码重置密码功能、Linux系统MySQL忘记密码,重置密码,忽略表名、列名大小写的方法、Mac mysql忘记密码、MySQL 8.0 忘记密码,重置密码,允许远程访问等更多相关知识的信息可以在本站进行查询。

本文标签: