linux里mysql远程登录,linux开启mysql远程登录

本文介绍了Linux系统下开启MySQL远程连接的步骤,包括通过GRANT命令授权远程用户,设置防火墙允许3306端口,以及解决常见的MySQL远程连接问题,如端口检查、用户权限和iptables设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Mysql默认root用户只能本地访问,不能远程连接管理mysql数据库,Linux如何开启mysql远程连接?设置步骤如下:

1、GRANT命令创建远程连接mysql授权用户itlogger

mysql -u root -p

mysql>GRANT ALL PRIVILEGES ON *.* TO mysql@localhost IDENTIFIED BY ‘mysql’ WITH GRANT OPTION;

mysql>GRANT ALL PRIVILEGES ON *.* TO mysql@”%” IDENTIFIED BY ‘mysqlWITH GRANT OPTION;

第一句增加mysql用户授权通过本地机(localhost)访问,密码“mysql”。第二句则是授与mysql用户从任何其它主机发起的访问(通配符%)。

2、设置防火墙允许3306端口(或者选择关闭防火墙 chkconfig iptables off)

vi /etc/sysconfig/IPtables

添加-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT

(注意添加在-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited之前,否则可能导致规则不生效)

重启防火墙service iptables restart

3、附:Mysql无法远程连接的常见问题

1)查看Mysql的端口是否正确,通过netstat -ntlp查看端口占用情况,一般情况下端口是3306。

2)报错:ERROR 2003 (HY000): Can’t connect to MySQL server on ’192.168.51.112′ (111)

查看/etc/my.cnf中,skip-networking 是否已被注掉,需要注掉。

3)报错:ERROR 2003 (HY000): Can’t connect to MySQL server on ’192.168.51.112′ (113)

查看是否iptables没有允许mysql连接,通过:service iptables stop临时关闭测试是否可以正常远程访问,如果可以,按上面方面设置iptable允许3306端口

4)远程访问mysql速度很慢的解决方法

修改/etc/my.cnf或my.ini

[mysqld]下添加

skip-name-resolve

skip-grant-tables

**********************************************************************************************************************

mysql数据库远程访问设置方法

1、修改localhost

更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改成"%"

mysql>use mysql;

mysql>update user set host = '%' where user = 'root';

mysql>select host, user from user;

mysql>FLUSH PRIVILEGES;

2、指定授权

使用myuser/mypassword从任何主机连接到mysql服务器:

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

使用myuser/mypassword从ip为192.168.225.166的主机连接到mysql服务器:

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.225.166' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

3、泛授权

mysql -h localhost -u root

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; //赋予任何主机上以root身份访问数据的权限

mysql>FLUSH PRIVILEGES;

解决Mysql无法远程连接的问题

1、Mysql的端口是否正确

通过netstat -ntlp查看端口占用情况,一般情况下端口是3306。在用工具连接MySQl是要用到端口。例如My Admin\My Query Browser\MySQl Front等。

2、检查用户权限是否正确

mysql库的user表里有两条记录:host分别为localhost和%(为了安全,%可以换成你需要外部连接的IP)。

3、查看/etc/mysql/my.cnf中,skip-networking 是否已被注掉

需要注掉

报错:ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.51.112' (111)

sudo gedit /etc/mysql/my.cnf

#skip-external-locking

#bind-address        = 127.0.0.1

skip-name-resolve

4、查看iptables是否停掉,没关的情况下,无法连接

通过:service iptables stop临时关闭。

报错:ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.51.112' (113)

设置好以后需要重启:sudo service mysql restart

如何给远程主机开启mysql远程登录权限

# 如何给远程主机开启mysql远程登录权限 > 在千锋学习PHP的有些学员会在阿里或者腾讯云去购买自己的云服务器.在初级阶段的项目上线时会遇到一个问题,就是无法使用远程连接工具操作自己线上的m ...

开启mysql远程登录

开发过程中经常遇到远程访问mysql的问题,每次都需要搜索,感觉太麻烦,这里记录下,也方便我以后查阅. 首先访问本机的mysql(用ssh登录终端,输入如下命令): mysql -uroot -p 输 ...

Linux开启MySQL远程连接

Linux开启MySQL远程连接的设置步骤 . MySQL默认root用户只能本地访问,不能远程连接管理MySQL数据库,那么Linux下如何开启MySQL远程连接?设置步骤如下: 1.GRANT命令 ...

(转)Linux开启mysql远程连接的设置步骤

Mysql默认root用户只能本地访问,不能远程连接管理mysql数据库,Linux如何开启mysql远程连接?设置步骤如下: 1.GRANT命令创建远程连接mysql授权用户itlogger mys ...

windows server2012如何开启mysql远程登录

开发的首要任务就是要搭建起自己的服务器,下面主要是我这搭建记录下 我的各种环境 服务器为Windows server2012  安装的MySQL数据的版本是5.6.10 ,64位.当然了版本对于安装没 ...

linux下MySQL安装登录及操作

linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-cl ...

关于mysql远程登录问题

问题:mysql不能实现远程登录 前提:mysql开启了远程登录账号,安全组也放行了3306,防火墙是iptables,也加入了3306放行,但是还是不能实现远程访问 解决办法,使用iptables ...

Linux 对mysql远程授权连接操作 和 查看mysql数据库和表 基本命令

Linux 对mysql远程连接的授权操作 首先linux连接mysql数据库 授权: grant all on *.* to ' with grant option; //允许账户root从任何主机 ...

如何开启MYSQL远程连接权限

开启MYSQL远程连接权限 //建议设置固定IP mysql> GRANT ALL PRIVILEGES ON *.* TO root@"8.8.8.8" IDENTIFIE ...

随机推荐

[Leetcode][JAVA] Minimum Window Substring

Given a string S and a string T, find the minimum window in S which will contain all the characters ...

关于RPC与MQ异同的理解

最近看了一些资料,回顾过去项目的经验,梳理自己对两者异同的理解: 相同: 1.都利于大型系统的解耦: 2.都提供子系统之间的交互,特别是异构子系统(如java\node等不同开发语言): 不同: 1. ...

Windows 8.1 Enterprise 下 安装 Eclipse 官方中文包后无法输入任何内容

最新文章:Virson's Blog 官方下载的Eclipse解压后运行,然后通过repository方式安装了中文语言包,按提示后重启,重启后不能进行任何输入,解决该问题的方法就是将eclipse. ...

虚拟机Linux----Ubuntu1204----退格键方向键无法使用

修改 /etc/vim/vimrc.tiny,如下: set compatible #修改为 set nocompatible #控制方向键set backspace=2 #控制退格键

php面试题之四——PHP面向对象(基础部分)

四.PHP面向对象 1. 写出 php 的 public.protected.private 三种访问控制模式的区别(新浪网技术部) public:公有,任何地方都可以访问 protected:继承, ...

mtk android lcm调试

参考MTK 文档LCM_Customer_document_MT6575.pdf The following shows the steps to add a new LCM driver: (1)  ...

PHP 关于 $GLOBALS['HTTP_RAW_POST_DATA']

PHP 关于 $GLOBALS['HTTP_RAW_POST_DATA'] 最近用微信api写接口时用到了这个,记录,下面转载开始: —————————— 这是手册里写的 总是产生变量包含有原始的 P ...

Apache log4net™ Config Examples

Overview This document presents example configurations for the built-in appenders. These configurati ...

iOS-设置状态栏白色以及覆盖状态栏

iOS-设置状态栏白色以及覆盖状态栏 将状态栏设置为白色 首先, 在info.plist中添加一个标记. View controller–based status bar appearance键值设置 ...

AngularJS基于模块化的MVC实现

AngularJS基于模块化的MVC实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值