如何连接远程Mysql数据库

如何连接远程Mysql数据库,第1张

一、连接远程数据库

1、显示密码

如:MySQL

连接远程数据库(192.168.5.116),端口“3306”,用户名为“root”,密码“123456”

C:/>mysql

-h

192.168.5.116

-P

3306

-u

root

-p123456

2、隐藏密码

如:MySQL

连接本地数据库,用户名为“root”,

C:/>mysql

-h

localhost

-u

root

-p

Enter

password:

二、配置mysql允许远程链接

默认情况下,mysql帐号不允许从远程登陆,只能在localhost登录。本文提供了二种方法设置mysql可以通过远程主机进行连接。

一、改表法

在localhost登入mysql后,更改

"mysql"

数据库里的

"user"

表里的

"host"

项,将"localhost"改称"%"

例如:

#mysql

-u

root

-p

Enter

password:

……

mysql>

mysql>update

user

set

host

=

'%'

where

user

=

'root'

mysql>select

host,

user

from

user

二、授权法

例如:

你想myuser使用mypassword(密码)从任何主机连接到mysql服务器的话。

mysql>GRANT

ALL

PRIVILEGES

ON

*.*

TO

'myuser'@'%'IDENTIFIED

BY

'mypassword'

WITH

GRANT

OPTION

如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码

mysql>GRANT

ALL

PRIVILEGES

ON

*.*

TO

'myuser'@'192.168.1.3'IDENTIFIED

BY

'mypassword'

WITH

GRANT

OPTION

mysql>FLUSH

PRIVILEGES

使修改生效,就可以了

常见问题:

1、在采用法二授权法之后,无法在本地登录mysql(如:#mysql

-u

root

-p

-h

192.168.5.116

Enter

password:

ERROR

1045

(28000):

Access

denied

for

user

'root'@'loadb116'

(using

password:

YES)

上例中loadb116是主机名.

解决方法:

1、这时可以使用:mysql

-u

root

-p

登录,进入到mysql后。

mysql>

grant

all

privileges

on

*.*

to

'root'@'loadb116'

identified

by

'123456'

with

grant

option

Query

OK,

0

rows

affected

(0.00

sec)

mysql>

flush

privileges

Query

OK,

0

rows

affected

(0.00

sec)

2、在本地使用ip地址登录

#

mysql

-u

root

-p

-h

192.168.5.116

Enter

password:

Welcome

to

the

MySQL

monitor.

Commands

end

with

or

/g.

Your

MySQL

connection

id

is

60

Server

version:

5.1.45

MySQL

Community

Server

(GPL)

Type

'help'

or

'/h'

for

help.

Type

'/c'

to

clear

the

buffer.

mysql>

mysql开启远程连接:

以 root用户登入mysql

GRANT all privileges ON wang.* TO 'wang'@'%' identified by 'wang'

flush privileges

请点击输入图片描述

修改配置文件

vi /etc/mysql/my.cnf

把bind-address           = 127.0.0.1  这行注掉

重启数据库

service mysql restart

请点击输入图片描述

本地测试连接3306端口

telnet 192.168.1.77 3306   若已连通

确定已安装mysql客户端which mysql

/usr/bin/mysql

然后mysql -uwang -h192.168.1.77 -p  看能否登录

请点击输入图片描述

外网如何利用网络辅助nat123实现访问内网mysql数据库?

网络环境:动态公网IP。

明确mysql数据库内网访问地址端口,确保mysql数据库服务正常,在内网可以正常访问连接。内网使用nat123动态域名解析。内网服务器安装nat123客户端,并使用它。登陆。进入主面板/域名解析列表/添加域名。选择动态域名解析记录,使用二级域名,或自己的域名。鼠标放在输入框有向导提示。

请点击输入图片描述

路由器端口映射,路由映射mysql数据库访问端口。

因为公网IP是在路由器上的,外网访问时,需要经过路由,需要在路由器上做端口映射,将内网mysql数据库访问端口打通。路由器端口映射位置:转发规则/虚拟服务器/添加允许外网访问端口和协议。我的mysql数据库端口是默认的3306,我内网对应mysql数据库主机的内网IP地址是192.168.1.22。

请点击输入图片描述

外网访问时,使用动态解析域名。

在外网访问mysql数据库时,使用动态解析域名进行连接访问。域名是不变的,可以上网即可访问,再也不担心动态公网IP变化的问题。

请点击输入图片描述


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8728418.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-20
下一篇 2023-04-20

发表评论

登录后才能评论

评论列表(0条)

保存