mysql_connect(): Connection using old (pre-4.1.1) authentication protocol refused_Mysql

做了一下mysql升级,开发机上mysql升级到5.6版本,结果连接一些低版本的mysql服务器报出如下异常:
Warning: mysql_connect(): Connection using old (pre-4.1.1) authentication protocol refused (client option 'secure_auth' enabled)

异常原因在于服务器端的密码管理协议陈旧,使用的是旧有的用户密码格式存储;但是客户端升级之后采用了新的密码格式。mysql5.6版本遇到这种不一致的情况就会拒绝连接。

详见mysql手册“Server Command Options”一节中“--secure-auth"选项的说明:http://dev.mysql.com/doc/refman/5.6/en/server-options.html#option_mysqld_secure-auth

解决方法有如下三种:

1、服务器端升级启用secure_auth选项;

2、客户端连接时off掉secure_auth,即连接时加上--secure_auth=off,如:mysql -p10.51.1.11 -P3308 -uroot --secure_auth=off

3、找到对应的mysql用户把密码改为新的加密方式,PASSWORD(‘your password'),如:

复制代码 代码如下:

SET PASSWORD FOR root=PASSWORD('123456');

对于方法二,使用在程序做相应mysql配置即可,以php为例,在php.ini中设置secure_auth=off

时间: 2024-10-05 15:39:06

mysql_connect(): Connection using old (pre-4.1.1) authentication protocol refused_Mysql的相关文章

MYSQL ERROR 2049: 一个mysql connection异常处理

问题描述 最近在Mac上开发一个脚本,使用MySQLdb模块.但是会抛出一个异常信息,如下面的堆栈信息.这个异常信息之前也碰到过,使用mysql client连接数据库,会有同样的问题.之前我是加上 –skip-secure-auth 绕开这个问题.但是现在使用mysqldb,发现没有地方可以加上这个参数. Traceback (most recent call last):   File "/Users/metaboy/script/TaskExecutor/tests.py", l

ERROR 2049 (HY000): Connection using old (pre-4.1.1)

    测试环境新装了MySQL服务器,在登陆时无法成功登陆.其提示为使用的旧的认证协议而被拒绝.其具体的错误提示为ERROR 2049 (HY000): Connection using old (pre-4.1.1) authentication protocol refused (client option 'secure_auth' enabled)以下是关于这个问题的描述及其解决方案,供大家参考.   1.故障现象[root@HKBO ~]# mysqladmin -u root pa

解决wordpress提示Error establishing a database connection的办法

打开 wordpress提示 "Error establishing a database connection ",这段话意思是连接数据时出现错误. 找到下面这些:  代码如下 复制代码 /** WordPress数据库的名称,替换掉 "putyourdbnamehere" */ define('DB_NAME', 'wordpress'); /** MySQL数据库用户名,替换掉 "usernamehere" */ define('DB_US

基于smack的即时聊天系统之文件传输功能实现

功能实现流程为: 1.文件发送方用户登录 2.确定文件的接收方和待发送文件路径 3.获取连接 4.根据连接获取文件接收方的完整jid(例如user@192.168.1.34/MiniQQ 2.3.6),其中MiniQQ 2.3.6为文件接收方用户客户端的resource,必须获取到,否则文件无法发送 5.发送文件 实现代码为: <span style="font-size:18px;">public int TransFile(String toUser, String f

Java事物回滚失效,在抛出异常的情况下仍然提交了SQL

问题描述 Java事物回滚失效,在抛出异常的情况下仍然提交了SQL private Connection connection; private Statement pre; public String set(String goal,String marriage){ return "update info set goal='"+goal+"'where marriage='"+marriage+"'"; } public void star

PHP 自学教程之MySQL数据库

PHP访问MySQL数据库的一般步骤: 1.连接MySQL数据库:使用mysql_connect()函数建立与MySQL服务器的连接. 2.选择MySQL数据库:使用mysql_select_db()函数选择MySQL数据库服务器上对于的数据库. 3.执行SQL语句:在选择的数据库中使用mysql_query()函数执行SQL语句. 4.关闭结果集:数据库操作完毕后,通过mysql_free_result()函数,释放MySQL系统资源. 5.关闭MySQL服务器:在完成数据库操作,应该使用my

Linux简明系统维护手册(五)

(12)配置samba服务器 ..... (13)构建基于Linux的VPN网络 构建VPN几乎是Linux的最高级应用之一了,学会了这项技术,是足以使你自豪的资本.VPN的主要用途就是建立一个加密的通信机制,然后通过把所有的你的子网的信息按照特定的方式加密传输,构成一个逻辑上的虚拟的网络.简单的说,就是一个Linux系统的IP层加密解决方案.这里面需要用到不少组件,下面一一介绍. 1.准备工作和安装 1.1 从http://www.kernel.org下载2.4.X的内核,除了2.4.15版本

Linux简明系统维护手册(四)

(7)安装imap服务器 几乎所有的发行包都带有imap服务器软件(一般是华盛顿大学版本),最好的办法是用你的发行包安装IMAP服务器.事实上,我个人觉得IMAP服务器很少被使用.下载最常规的IMAP服务器源码地址是:ftp://ftp.cac.washington.edu/imap/imap.tar.Z tar zxvf imap.tar.Z cd imap-2001a make slx (如果不行依次试验一下其他你觉得可能的系统类型,用vi看一下Makefile中列的名称) 然后配置/etc

MySQL5 改密码后不能登录问题的解答

首先说明一下,下面描述仅限于Win系统 其它系统我没试过,Mysql 自从4.1.1以后修改了用户密码的格式, 从16位增加到了41位, 采用了一种新的验证方法,但4.1以前的客户端协议不支持这种方法,所以造成了不能登临的后果.即使密码正确了不能正常登录. 提示如下: #1250 - Client does not support authentication protocol requested by server; consider upgrading MySQL client 在窗口中执行