`

linux下mysql开启远程访问权限及防火墙开放3306端口

阅读更多
linux下mysql开启远程访问权限及防火墙开放3306端口
来源:王艺强的博客  

开启mysql的远程访问权限

默认mysql的用户是没有远程访问的权限的,因此当程序跟数据库不在同一台服务器上时,我们需要开启mysql的远程访问权限。

主流的有两种方法,改表法和授权法。

相对而言,改表法比较容易一点,个人也是比较倾向于使用这种方法,因此,这里只贴出改表法

1、登陆mysql

1
mysql -u root -p

 

2、修改mysql库的user表,将host项,从localhost改为%。%这里表示的是允许任意host访问,如果只允许某一个ip访问,则可改为相应的ip,比如可以将localhost改为192.168.1.123,这表示只允许局域网的192.168.1.123这个ip远程访问mysql。

 

1
2
3
4
mysql> use mysql;
mysql> update user set host = '%' where user = 'root';
mysql> select host, user from user;
mysql> flush privileges;

 

防火墙开放3306端口

1、打开防火墙配置文件

 

1
vi  /etc/sysconfig/iptables

 

2、增加下面一行

 

1
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

 

3、重启防火墙

 

1
service  iptables restart

 

注意:增加的开放3306端口的语句一定要在icmp-host-prohibited之前

附:个人配置

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -p icmp -j ACCEPT
-A FORWARD -i lo -j ACCEPT
-A FORWARD -i eth0 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
分享到:
评论

相关推荐

    linux下mysql开启远程访问权限 防火墙开放3306端口

    主要为大家详细介绍了linux下mysql开启远程访问权限,防火墙开放3306端口,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    ubuntu 15.04开放mysql远程3306端口

    虽然现在 3306 端口已经对外部开放,但还需要为 MySQL 用户授予远程访问权限。 1. 使用 root 用户登录 MySQL: ```bash sudo mysql -u root -p ``` 2. 输入 root 用户的密码。 3. 授予 root 用户远程访问权限: ...

    开启Mysql远程访问(关闭防火墙).txt

    ### 开启MySQL远程访问(关闭防火墙) #### 知识点概述 本文档主要介绍了如何在Linux环境下通过关闭防火墙来实现MySQL的远程访问。在实际应用中,MySQL默认只允许本地连接,若想实现远程访问,则需要进行一系列...

    Linux开启mysql远程连接

    ### Linux开启MySQL远程连接详解 #### 一、背景介绍 随着云计算和大数据技术的发展,Linux作为服务器操作系统的优势日益凸显,而MySQL作为一款广泛使用的开源关系型数据库管理系统,在Linux环境下更是得到了广泛...

    在Ubuntu/Linux环境下使用MySQL开放/修改3306端口和开放访问权限

    在Ubuntu/Linux环境中,MySQL作为广泛使用的数据库管理系统,其默认配置可能并不满足远程访问或特定端口的需求。本文将详述如何在Ubuntu 17.04 64位系统上,针对MySQL 5.7版本,开放并修改3306端口,以及开放访问...

    mysql设置指定ip远程访问连接实例

    - 即使在MySQL层面设置了远程访问,如果服务器的防火墙未开放相应的端口(默认为3306),远程连接仍无法建立。因此,你需要确保在服务器的防火墙规则中允许来自指定IP的TCP流量进入3306端口。这通常通过`iptables`...

    MySQL开启关闭远程访问

    检查防火墙是否开启了MySQL的3306端口,并尝试从另一台计算机上使用root用户进行远程登录测试。 #### 二、关闭远程访问 **1. 登录本地MySQL** 同上一步骤,登录MySQL。 **2. 使用MySQL库** 同上一步骤,使用...

    Linux中开启mysql远程访问功能.docx

    开启MySQL远程访问的第一步是检查3306端口的状态。这个端口是MySQL默认的通信端口。你可以使用`netstat`命令来查看: ```bash ~# netstat -an | grep 3306 ``` 如果输出显示`bind-address = 127.0.0.1`,这意味着...

    linux下安装mysql服务器

    命令设置 root 用户权限,并开放防火墙端口号。 8. MySQL 目录结构 MySQL 的目录结构包括数据库目录 /var/lib/mysql/,配置文件目录 /usr/share/mysql/,命令目录 /usr/bin/,日志文件目录 /var/log/mysqld.log ...

    MySQL-Front 远程访问linux数据库

    3. **防火墙设置**:确保Linux服务器的防火墙(如iptables或ufw)允许来自MySQL-Front所在机器的TCP端口3306(默认MySQL端口)的入站流量。 4. **用户权限**:在MySQL数据库中,你需要为想要远程访问的用户分配相应...

    在Linux环境下启用MySQL数据库远程访问的方法[文].pdf

    在 Linux 环境下启用 MySQL 数据库远程访问的方法 MySQL 数据库是当前最流行的关系型数据库管理系统之一,在 Linux 环境下启用 MySQL 数据库远程访问是非常重要的。由于安全考虑, MySQL 数据库通常关闭了远程访问...

    Linux,mysql同意远程连接教程-mysql5.6同意远程连接.docx

    5. **配置MySQL防火墙规则**:在Linux系统中,可能还需要打开MySQL的默认端口(通常是3306)以允许外部连接。例如,如果使用的是iptables防火墙,可以执行以下命令: ``` sudo iptables -A INPUT -p tcp --dport ...

    linux下mysql安装配置

    【Linux下MySQL安装配置】 在Linux操作系统中安装和配置MySQL数据库是系统管理的重要部分,尤其对于需要处理数据存储和检索的应用程序来说。MySQL是一个流行的开源关系型数据库管理系统,广泛应用于Web应用程序、...

    远程连接mysql数据库 Linux,MySql数据库远程连接教程.docx

    - 需要在防火墙中打开3306端口,允许外部连接。例如,在CentOS中,可以使用`firewall-cmd --permanent --add-port=3306/tcp`命令添加规则,然后重启防火墙服务以应用更改。 6. **MySQL目录结构** - 数据库文件:`...

    Linux,mysql同意远程连接教程-mysql5.6同意远程连接.pdf

    如果遇到“Access denied for user”的错误,检查你的防火墙设置,确保3306端口(默认MySQL端口)对远程连接开放,并检查MySQL的配置文件(通常为`my.cnf`)中的`bind-address`是否设置为0.0.0.0,这允许从所有IP...

    mysql开启远程连接(mysql开启远程访问)

    MySQL数据库是世界上最受欢迎的开源关系型数据库之一,其在企业级应用中被广泛...通过这些步骤,你就能成功开启MySQL的远程访问权限。但在实际操作中,请根据你的具体环境和需求进行调整,并确保始终遵循最佳安全实践。

    Mysql初始化root密码和允许远程访问

    5. **安全措施**:开放远程访问后,强烈建议设置防火墙规则,只允许特定IP地址或IP段访问MySQL端口(默认为3306)。 6. **保存配置**:如果在my.cnf配置文件中进行了修改,记得保存并重启MySQL服务,使更改生效。 ...

    linux安装mysql(实测没问题)

    ### Linux 下 MySQL 5.7 的安装与配置详解 #### 一、下载 MySQL 安装包 1. **离线安装准备**: - 如果在没有网络连接的情况下安装 MySQL,可以借助于文件交互软件如 xftp6 或 MobaXterm 来传输安装包。 - 可以...

Global site tag (gtag.js) - Google Analytics