mysql是现在很常用的软件,以下是我收集到的一些关于远程失败时候的出来办法
欢迎加我联系2247597368
## 1. ERROR 2003(hy000):can't connect to mysql server on 'localhost' (10061)
原因是MySQL考虑到安全因素,默认配置只让从本地登录
打开 /etc/mysql/my.cnf 文件,找到 bind-address = 127.0.0.1 修改为 bind-address = 0.0.0.0
重启`mysql : sudo /etc/init.d/mysql restart`
再次连接,发生错误 1045
## 2. ERROR 1045 (28000): Access denied for user 'root'@'x.x.x.x' (using password: NO)
- 原因是没有给登录用户名设置远程主机登录的权限。还有种可能是你需要重设下密码....可能是授权操作引起这种后遗症..
- 在本地用 root 登录:
```
# mysql -u root -p
```
修改 MySQL 数据库中 user 表中 对应用户名的 Host 字段,将 localhost 改为 `%`
```
mysql> use mysql;
mysql> update user set Host = '%' where User = 'username';
```
## 3. 取回ROOT密码并设置远程登录
- 重设 ROOT密码
```
# mysqld_safe --skip-grant-tables &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
```
- 设置 ROOT 远程连接
```
mysql> update user set host = '%' where user='root';
```
- Kill进程,重启 mysqld
查看进程`PS -A | grep mysql `,可看到MYSQLD_SAFE与MYSQL进程,此时MYSQL可正常使用,不过查看参数,可看到`--skip-grant-tab`
输入 `kill -9 [pid]` 关闭进程
## 4. ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
如果执行update语句时出现ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY' 错误,说明有多个ROOT用户纪录在USER表中了.
`mysql> select host from user where user = 'root';`
查看一下host是否已经有了`%`这个值,有了就可以了.
`mysql> select host,user from user where user='root';`
```
+-----------------------+------+
| host | user |
+-----------------------+------+
| % | root |
| 127.0.0.1 | root |
| ::1 | root |
| localhost.localdomain | root |
+-----------------------+------+
```
然后用ROOT用户登录更改用户账户的远程连接权限时.出现提示:ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'。
##5. ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'
是因为mysql数据库的user表里,存在用户名为空的账户即匿名账户,导致登录的时候是虽然用的是root,但实际是匿名登录的,通过错误提示里的''@'localhost'可以看出来,于是解决办法见
先关闭MYSQL进程..
然后
`# mysqld_safe --skip-grant-table`
接着输入
```
mysql -u root mysql
mysql> delete from user where USER='';
mysql> FLUSH PRIVILEGES;
```
如果出现 Starting demo from .. 后..先输入其它命令,再用mysql -u root mysql .它又会出现这个错误了.
然后KILL掉MYSQL进程,..重启正常的进程..
设置用户远程主机连接权限
```
mysql> update user set host = '%' where user='tester';
mysql> FLUSH PRIVILEGES;
```
## 6. 设置用户与库的权限
但是在实际连接中,虽然可以连接,但是去没有所在库的权限,下面设置权限
```
mysql> grant all privileges on tester.* to tester@'%' identified by '1234';
mysql> FLUSH PRIVILEGES;
```
百分号两边要有单引号,否则语法错误
然后连接时,竟然提示1045 错误了,重设下密码试下.
```
mysql> update mysql.user set password=password('XXX') where User="tester"
mysql> flush privileges;
分享到:
相关推荐
【标题】"JSP毕业设计——JSP网络远程作业处理系统(源代码+论文+开题报告+实习报告).zip" 提供的是一个基于JSP技术的毕业设计项目,主要功能是实现网络上的远程作业处理。这个系统可能包含了学生提交作业、教师批改...
数据库——MYSQL.doc
第20章 MySQL管理利器——MySQL Utilities 共5页.pptx 第21章 读写分离的利器——MySQL Proxy 共5页.pptx 第22章 PHP操作MySQL数据库 共7页.pptx 第23章 新闻发布系统数据库设计 共6页.pptx 第24章 论坛管理系统...
第20章 MySQL管理利器——MySQL Utilities 共5页.pptx 第21章 读写分离的利器——MySQL Proxy 共5页.pptx 第22章 PHP操作MySQL数据库 共7页.pptx 第23章 新闻发布系统数据库设计 共6页.pptx 第24章 论坛管理系统...
《Navicat121——mysql64.tar.gz:高效管理MySQL数据库的得力助手》 Navicat121是Navicat系列的最新版本,专为MySQL数据库设计的一款强大的管理和开发工具。该软件以其直观的用户界面、丰富的功能集以及对多种...
“浅析数据库之效能——MYSQL数据库作用与技巧” 概述:本文档旨在对MySQL数据库的效能和技巧进行浅析,涵盖了 MySQL 数据库的基本概念、数据类型、数据表、数据操作、系统管理命令等方面的知识点。 一、MySQL...
腾讯云——mysql使用该工具需要安装JDK7及以上版本的,因为现在用的开发环境和编译环境都是JDK7,其它版本的JDK还没有测试过,更高版本的应该没有问题,必需要在操作系统的环境变量里配置好JAVA_HOME,不然会找不到...
管中窥豹——MySQL(InnoDB)死锁分析之道 阿里巴巴高级数据库专家
JDBC数据类型与数据库字段对应表——mysql篇 数值型 整型 JDBC tinyint java.lang.Integer smallint mediumint java.lang.Long int bigint java.math.BigInteger
PHP实例开发源码——mysql在线管理 phpMyAdmin For Windows.zip
mysql 远程连接错误 1130 的解决方法 mysql 远程连接错误 1130 是一个常见的问题,当我们尝试从远程访问 mysql 服务器时,可能会遇到这个错误。这个错误的原因是因为 mysql 服务器不允许远程连接的用户权限问题。...
(5条消息) 大数据基础——MySql篇_mysql 大数据_我菜的要死的博客-CSDN博客.mhtml
33_01_MySQL系列之五——MySQL数据类型及sql模型笔记存储引擎也被称为表类型.不支持事务支持表锁.frm 表结构定义文件.MYD 表数据文件支持事
### Talend学习笔记2——mysql文件导入到HDFS #### 关键知识点概览 - **Talend Data Integration** - **MySQL 数据库** - **Hadoop 和 HDFS(Hadoop Distributed File System)** #### 详细知识点说明 ##### 1. ...
关于mysql方面的操作教程,主要是数据库的创建,表的制作,数据插入,删除等基本操作
mysqls是目前应用比较广泛的数据库,在 Java中使用JDBC连接。
Navicat for MySQL 远程连接错误 1130 解决方法 Navicat for MySQL 是一款功能强大的数据库管理工具,但是在远程连接 MySQL 服务器时,可能会遇到错误 1130,这是因为 MySQL 服务器不允许从远程主机连接。下面我们...