ubuntu MySQL拒绝远程连接(10061)
MySQL是使用apt-get安装的
1.停止mysql服务
sudo service mysql stop
2.修改配置文件/etc/mysql/mysql.conf.d/mysqld.cnf
将bind-address = 127.0.0.1 这行注释掉改为 bind-address = 0.0.0.0
3.使用root登陆mysql
hupeng@hupeng-vm:~$ mysql -u root -p
mysql> grant all on *.* to root@"%" identified by "远程登陆的密码"
mysql> flush privileges; # 这句可以不要
mysql> quit
root@"%" 中的通配符%表示可以通过任意的ip进行连接,包括localhost。但对于同一个用户名(如root),如果同时设置了%和具体的ip(localhost, 192.168.1.x), 具体主机ip(如localhost)要比通配符%的优先级高。如果尝试通过mysql -uroot -p登陆,使用的root@localhost身份非root@%身份登陆。
远程登陆的密码可以和本地登陆的密码不同
设置本地登陆的密码
mysql> grant all on *.* to root@localhost identified by "本地登陆的密码"
初始状态

修改后的

本地登陆和远程登陆的密码可以不同
其实mysql是通过用户名和ip地址的组合区分用户
[hupeng@hupeng-vm:~]$mysql -u root -p
mysql> select current_user();
+----------------+
| current_user() |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)
# 192.168.1.107为本地地址
[hupeng@hupeng-vm:~]$mysql -u root -p -h 192.168.1.107
mysql> select current_user();
+----------------+
| current_user() |
+----------------+
| root@% |
+----------------+
1 row in set (0.00 sec)
注释: root 和root@%是等效的
以test用户为例:
test@%、'test'@'%'、“test”@"%" 以及`test`@`%`互为等价,即形如user_name@host_named的账户名称,user_name和host_name可分别加上成对的单引号或者双引号、反引号
但'test@%'等价与test@%@%
注意: 如果只是创建‘root'@'%'用户,但不重新授权,默认只能访问information_schema表格
服务器端:
mysql> select user,host from mysql.user;
+---------------+-----------+
| user | host |
+---------------+-----------+
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+---------------+-----------+
rows in set (0.00 sec) mysql> create user 'root'@'%' identified by 'xxx';
Query OK, rows affected (0.00 sec) mysql> select user,host from mysql.user;
+---------------+-----------+
| user | host |
+---------------+-----------+
| root | % |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+---------------+-----------+
rows in set (0.00 sec)
客户端远程登陆
[hupeng@localhost ~]$ mysql -uroot -p -h 192.168.1.107
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
+--------------------+
row in set (0.00 sec)
ubuntu MySQL拒绝远程连接(10061)的更多相关文章
- 在mysql启用远程连接
1.在ubuntu下面安装mysql. apt-get install mysql-server mysql-client -y 2.修改/etc/mysql/my.cnf文件. #bind-addr ...
- Linux下mysql实现远程连接
首先明白一点并不是mysql禁止远程连接,而是MYSQL的账号禁止远程连接.可能觉得我有点咬文嚼字了,不过我感觉分清这点还是很重要的.默认情况下,所有账号都是禁止远程连接的.在安装MYSQL的时候,在 ...
- [转]配置mysql允许远程连接的方法
配置mysql允许远程连接的方法 vim /etc/my.cnf注释这一行:bind-address=127.0.0.1 ==> #bind-address=127.0.0.1保存退出.mysq ...
- MySQL数据库远程连接
12.00 MySQL数据库远程连接 参考: http://www.jb51.net/article/24508.htm http://www.linuxdiyf.com/viewarticle.ph ...
- mysql 不能远程连接
不想浪费大家时间,我这文章记录了我在vagrant上架的mysql远程连接不上的问题,不过我在整理时发现这个下面这个链接,如果我一开始能找到这个我就不会绕那么多弯了.不想看我是怎么一步步调错过程的请直 ...
- MySql实现远程连接
MySql实现远程连接 1.进入mysql,创建一个新用户root,密码为root: 格式:grant 权限 on 数据库名.表名 to 用户@登录主机 identified by "用户密 ...
- 开启本地MySql数据库远程连接
解决MySQL不允许从远程访问的方法 开启 MySQL 的远程登陆帐号有两大步: 1.确定服务器上的防火墙没有阻止 3306 端口. MySQL 默认的端口是 3306 ,需要确定防火墙没有阻止 33 ...
- mysql允许远程连接授权方法
mysql数据库和apache不在同一台服务器时,需要远程连接mysql,这就要对mysql进行远程连接授权,为了安全只允许某些ip可以连接: 假如你想root用户从ip 192.168.2.12连接 ...
- Mysql开启远程连接方法
分类: 数据库开发技术 解决MySQL不允许从远程访问的方法 开启 MySQL 的远程登陆帐号有两大步: 1.确定服务器上的防火墙没有阻止 3306 端口. MySQL 默认的端口是 3306 ,需要 ...
随机推荐
- rest-framework之视图
rest-framework之视图 本文目录 一 基本视图 二 mixin类和generice类编写视图 三 使用generics 下ListCreateAPIView,RetrieveUpdateD ...
- Python字符编码转换
编码回顾 在备编码相关的课件时,在知乎上看到一段关于Python编码的回答这哥们的这段话说的太对了,搞Python不把编码彻底搞明白,总有一天它会猝不及防坑你一把.不过感觉这哥们的答案并没把编码问题写 ...
- while与do/while循环
while循环1.格式:初始化条件while(循环条件){循环体迭代条件}题目:100以内偶数的输出及其和(while语句) public class V{ public static void ma ...
- 前端开发利器: Bootstrap + AngularJS
http://blog.csdn.net/conquer0715/article/details/51181391 概述 在HTML5盛行的互联网时代,涌现诸多的前端html/css/js框架,基于其 ...
- IO流的序列化和反序列化
序列化和反序列化的概念: 序列化:把对象转换为字节序列的过程称为对象的序列化.(常见的就是存文件) 反序列化:把字节序列恢复为对象的过程称为对象阿德反序列化. 序列化和反序列化的使用: java.io ...
- prime docker-compose 环境运行试用
prime 是一款基于graphql的开源cms,功能点很不错,但是出来不久,还是有好多bug的 官方暂时没有提供docker 的运行方式,为了方便测试,搞了以及docker-compose 测试的 ...
- JSON数据的处理中的特殊字符
JSON现在是很常见的处理数据的方式了.但由于自己使用的是反射获取数据,必须自己处理特殊字符,但总是发现有一些看不见的字符在前台 var obj = jQuery.parseJSON(msg);会转换 ...
- count(*) 和 count(1)和count(列名)区别
执行效果上: count(*)包括了所有的列,相当于行数,在统计结果的时候,不会忽略列值为NULL count(1)包括了所有列,用1代表代码行,在统计结果的时候,不会忽略列值为NULL cou ...
- springfox+swagger2生成API文档
1.建立一个spring mvc工程: 2.添加POM依赖: <properties> <springfoxversion>2.6.1</springfoxversion ...
- tcpdump过滤某个端口
一般我们使用Tcpdump时都是使用: Java代码 tcpdump -i ethx www.2cto.com 下面这条命令就是查看80端口的访问量,进行排序,取前20位 Ja ...