Windows 上 SQLyog 连接 CentSO7 上 MySql 相关设置及常见问题

版权声明:本文为博主原创文章,欢迎转载,转载请注明作者、原文超链接。 https://blog.csdn.net/axing2015/article/details/81107606

一、版本相关

1. CentOS7

# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (AltArch) 

2. Mysql

# mysql -V
mysql  Ver 14.14 Distrib 5.7.17, for Linux (i686) using  EditLine wrapper

3. Windows10 安装 SQLyog

二、mysql数据库用户设置

1. 检查 user 表用户信息

1.1 登陆

[root@localhost ~]# mysql -uroot -p
Enter password: 

1.2 检查

mysql> select host, user, authentication_string from mysql.user;
+-----------+-----------+-------------------------------------------+
| host      | user      | authentication_string                     |
+-----------+-----------+-------------------------------------------+
| localhost | root      | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
+-----------+-----------+-------------------------------------------+
2 rows in set (0.00 sec)

1.3 创建用户 admin (也可以直接使用 root 用户,需要更新 host=%)

mysql> create user 'admin' identified by '123456';    -- 用户名:admin 密码:123456
Query OK, 0 rows affected (0.09 sec)

1.4 将 mysql 所有权限赋给 admin

mysql> grant all on *.* to 'admin'@'192.168.209.129' identified by '123456';  -- ip ‘192.168.209.129’ 获取可以参考 1.6
Query OK, 0 rows affected, 1 warning (0.02 sec)

1.5 使操作生效

mysql> flush privileges;
Query OK, 0 rows affected (0.15 sec)

1.6 再次查询

mysql> select host, user, authentication_string from user;
+-----------------+-----------+-------------------------------------------+
| host            | user      | authentication_string                     |
+-----------------+-----------+-------------------------------------------+
| localhost       | root      | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost       | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| 192.168.209.129 | admin     | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| %               | admin     | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+-----------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)

2. 在windows上使用 sqlyog 连接 mysql,如果成功则最好,如果报下面的错误,则说明防火墙没有对 3306 端口对外访问开权限


三、使用 firewalld 开启端口对外访问权限

1. 启动 firewalld

systemctl start firewalld

2. 开启 3306 访问权限

firewall-cmd --zone=public --add-port=3306/tcp --permanent    #permanent永久生效,没有此参数重启后失效
firewall-cmd --reload                                         #使配置生效

3. 再次使用 SQLyog 连接 Mysql

四、firewalld 基本操作命令

1. firewalld的基本使用

systemctl start firewalld        #启动
systemctl stop firewalld         #关闭 
systemctl status firewalld       #查看状态
systemctl disable firewalld      #开机禁用
systemctl enable firewalld       #开机启用
systemctl mask firewalld         #锁定服务
systemctl unmask firewalld       #取消锁定服务

2. systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。

systemctl start firewalld.service       #启动一个服务
systemctl stop firewalld.service        #关闭一个服务
systemctl restart firewalld.service     #重启一个服务
systemctl status firewalld.service      #显示一个服务的状态
systemctl enable firewalld.service      #在开机时启用一个服务
systemctl disable firewalld.service     #在开机时禁用一个服务
systemctl is-enabled firewalld.service  #查看服务是否开机启动
systemctl list-unit-files|grep enabled  #查看已启动的服务列表
systemctl --failed                      #查看启动失败的服务列表

3. 配置firewalld-cmd

firewall-cmd --version                      #查看版本
firewall-cmd --help                         #查看帮助
firewall-cmd --state                        #显示状态
firewall-cmd --zone=public --list-ports     #查看所有打开的端口
firewall-cmd --reload                       #更新防火墙规则
firewall-cmd --get-active-zones             #查看区域信息
firewall-cmd --get-zone-of-interface=eth0   #查看指定接口所属区域
firewall-cmd --panic-on                     #拒绝所有包
firewall-cmd --panic-off                    #取消拒绝状态
firewall-cmd --query-panic                  #查看是否拒绝

4. 那怎么开启一个端口呢?

firewall-cmd --zone=public --add-port=3306/tcp --permanent       #配置一个端口,permanent永久生效,没有此参数重启后失效
firewall-cmd --zone=public --add-port=1000-2000/tcp --permanent  #配置区间设置端口
firewall-cmd --reload                                            #重新载入,是配置生效
firewall-cmd --zone= public --query-port=3306/tcp                #查看
firewall-cmd --zone= public --remove-port=3306/tcp --permanent   #删除端口

5. 当然你可以还原传统的管理方式

#执行一下命令:
systemctl stop firewalld    #停止firewalld
systemctl mask firewalld    #锁定firewalld

#并且安装iptables-services:
yum install iptables-services

systemctl enable iptables   #设置开机启动
systemctl disable iptables  #设置禁用启动
systemctl stop iptables
systemctl start iptables
systemctl restart iptables
systemctl reload iptables

service iptables save       #保存设置

#开放某个端口 在vi /etc/sysconfig/iptables里添加
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

6. 再次使用 SQLyog 连接 Mysql

猜你喜欢

转载自blog.csdn.net/axing2015/article/details/81107606