博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ERROR 2003 (HY000): Can't connect to MySQL server on '' (10060) CentOS7 安装二进制包mysql5.7.19...
阅读量:6301 次
发布时间:2019-06-22

本文共 1953 字,大约阅读时间需要 6 分钟。

hot3.png

前两天在阿里买了个ECS云服务器,CentOS7.3的。安装mysql5.7.19 官网最新版的 全名mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz,二进制版本。

5.7.19较之前的版本有了很大的变化:

复制代码

1、从MySQL 5.7.18开始,my-default.cnf不再包含在安装包中。2、解压后包根目录里没有data,所以解压之后先新建data,一个存储mysql所有数据库和表的文件夹。初始化的目的也是先初始化它,开始时为空。3、5.7.6 版本开始,MySQL 初始化使用 mysqld --initialize 命令,不再使用 mysql_install_db 命令 由于缺少my.cnf配置文件 没有默认的datadir和basedir  初始化时,请用#./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

复制代码

尽量使用mysql默认的安装位置 /usr/local 路径下。

分析:1、开始以为是防火墙的问题,用命令 

1

2

3

4

5

# systemctl status firewalld.service

● firewalld.service - firewalld - dynamic firewall daemon

  Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)

  Active: inactive (dead)

    Docs: man:firewalld(1)

  发现是dead 死的,排除了防火墙屏蔽3306端口

2、为mysql添加远程权限

1

2

3

4

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

//格式:GRANT ALL PRIVILEGES ON *.* TO '登录名'@'登录ip,%为任意地址' IDENTIFIED BY '登录密码' WITH GRANT OPTION;

 

mysql> FLUSH PRIVILEGES;  //刷新策略

 添加后依然不行,但这是必不可少的

检验是否成功设置

1

2

3

4

5

6

7

8

9

10

11

mysql> use mysql;

mysql> select user,host from user;

+---------------+-----------+

| user          | host      |

+---------------+-----------+

| root          | %         |

| mysql.session | localhost |

| mysql.sys     | localhost |

| root          | localhost |

+---------------+-----------+

4 rows in set (0.00 sec)

  发现设置好了

3、是不是mysql某个配置文件 .cnf的文件 比如my.cnf或者其他的文件把bind-address设成了本地,顾名思义:绑定了地址

找了一圈没找到,担心还会出问题,故意在 /etc/my.cnf 里加了一句

1

bind-address = 0.0.0.0

  如果找到

1

2

3

# Instead of skip-networking the default is now to listen only on

# localhost which is more compatible and is not less secure.

bind-address           = 127.0.0.1  #这里默认监听本地localhost

  那就注了就是了

4、然后依然不行,又搜了一下发现skip-networking是指定mysql本地运行的,跳过了TCP/IP

没在配置里找到,也没用这个方式启动

5、最后。哈 终于找到了问题的关键

阿里云官方的限制,关闭了3306端口

在个人中心进入自己买的服务器,点击最右侧的配置规则,出现下图,前两个规则是我自己加的。对了貌似8080端口也是关闭的,先选中入方向,点击添加安全组规则,按照下图的第一列添加信息。

添加后刷新下,然后再用本地重连发现OK了。

转载于:https://my.oschina.net/liupengjun/blog/1797516

你可能感兴趣的文章
MySQL Replication 主主配置详细说明
查看>>
Linux的任务调度
查看>>
在Android studio中添加jar包方法如下
查看>>
iframe 在ie下面总是弹出新窗口解决方法
查看>>
分享10款漂亮实用的CSS3按钮
查看>>
安装nginx 常见错误及 解决方法
查看>>
Gorun8电子商城
查看>>
在之前链表的基础上改良的链表
查看>>
android编译系统makefile(Android.mk)写法
查看>>
MD5源代码C++
查看>>
Eclipse 添加 Ibator
查看>>
Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
查看>>
Python编程语言
查看>>
十四、转到 linux
查看>>
Got error 241 'Invalid schema
查看>>
ReferenceError: event is not defined
查看>>
男人要内在美,更要外在美
查看>>
为什么要跟别人比?
查看>>
app启动白屏
查看>>
Oracle 提高查询性能(基础)
查看>>