访问m
Mysql数据库服务器部署在内网环境,局域网内可以访问mysql数据库,内网也可以上外网。利用nat123如何实现外网访问到内网mysql数据库?下面是我跟大家分享的是外网如何访问局域网内网的mysql数据库,欢迎大家来阅读学习。
外网如何访问局域网内网的mysql数据库
外网访问内网的mysql数据库的方法
首先要确保内网应用正常。明确内网mysql数据库访问地址,并确保mysql数据库服务正常。如本地mysql数据库访问地址是localhost:3306。

② MySQL访问步骤
1、打开客户端(CMD控猛戚制台) : mysql.exe
2、输入服务器信息(连接逗亮)和用户信息(验证山知宽)
3、执行SQL操作
4、断开连接
③ 如何远程访问MySQL数据库详解
一、连接远程数据库:
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>
④ php访问mysql数据库说法错误的是
PHP连接数据库Mysql错误:Fatal error: Call to undefined function mysql_connect() in。。。(某个php文件的地址)
此错误是出现在安装并配置好PHP、Mysql、Apache服务器的情况下产生的。
我在网上查找了很多原因,并尝试着修改之后成功了,将解决方法跟大家交流下。
1、在PHP安装目录之下,找到php.ini,在此文件中将“;extension=php_mysql.dll”引号中句子前的分号去掉。表明php可以加载此mysql模块,当然也可以选择其他要加载的模块,去掉其前面的分号,但是模块加载得越州肢配多,占用的资源越多。
2、加载了模块之后,就需要指明模块所在的位置,比较简单的方式是直接修改环境变量。
具体操作为:
右键”我的电脑” -> “属性” -> “高级” -> “环境变量”,编辑“系统变量”下的“Path”,在原来的值后加上“;E:\php\php5;E:\php\php5\ext”。(“E:\php\php5”为php的安装目录)
系统路径添加好之后需要重启计算机才能生效。
3、将php安装目录下的libmysql.dll拷贝至apache服务饥晌器的bin目录之下。
4、所有的配置册指修改好之后,需要重启apache服务器。
测试代码:test.php(其中,user为MySQL的用户名,userpassword为MySQL的对应用户密码)
⑤ 如何登录mysql
当MySQL服务开启后,就可以通过客户端来登录 MySQL 数据库了。在 Windows 操作系统下可以使用 DOS 命令登录数据库,本节将介绍使用命令方式登录 MySQL 数据库的方法。
登录 MySQL 数据库的具体操作步骤如下:
步骤 1):单击“开始”→“Windows 系统”→“命令提示符”,如图所示。
⑥ MySQL如何访问
●客户端访问服务端
。薯陵宏利用Windows控制台访问(MySQL客户汪野端)
。利用数据库管理工具(Navicat)
●客户端需要连接认证
。-h: 主机地址(本机localhost可以省略)
。-P: 端口号(默认3306可以省略)
。-u: 用户名
。数册-p: 用户密码
⑦ 怎样设置才能允许外网访问MySQL
设置mysql服务允许外网访问,修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】.1:设置mysql的配置文件
/etc/mysql/my.cnf
找到 bind-address =127.0.0.1 将其链培注释掉;//作用是使得不再只允许本地访问;
棚弯唯重启mysql:/etc/init.d/mysql restart;
2:登录mysql数据库:mysql -u root -p
mysql> use mysql;
查询host值:
mysql> select user,host from user;
如果没有"%"这个host值,就执行下面这两句:
mysql> update user set host='闹陆%' where user='root';
mysql> flush privileges;
或者也可以执行:
mysql>grand all privileges on *.* to root@'%' identifies by ' xxxx';
其中 第一个*表示数据库名;第二个*表示该数据库的表名;如果像上面那样 *.*的话表示所有到数据库下到所有表都允许访问;
‘%':表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问;
后面到‘xxxx'为root 用户的password;
举例:
任意主机以用户root和密码mypwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;
IP为192.168.1.102的主机以用户myuser和密码mypwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.102' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;
⑧ 如何让mysql数据库允许被远程连接访问
第一:更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'。 x0dx0a或者新加条记录,“host” 项为要访问的ip地址,并授权。重启mysql服务。 x0dx0a第二:在系统防火墙添加例外端口:3306,并允许例外。 x0dx0ax0dx0a错误提示: x0dx0aERROR 1130: Host 餘.168.1.3' is not allowed to connect to this MySQL server x0dx0a的解决方法: x0dx0a1。改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电升芦森脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,吵亩从哗和"localhost"改称"%" x0dx0a1.mysql -u root -pvmwarex0dx0amysql>use mysql;x0dx0amysql>update user set host = '%' where user = 'root'x0dx0amysql>select host, user from user; x0dx0ax0dx0a2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。 x0dx0ax0dx0aGRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; x0dx0a如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码 x0dx0aGRANT ALL PRIVILEGES ON *.* TO 'myuser'@餘.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; x0dx0ax0dx0a3.在window自带的防火墙里的例外添加3306端口 x0dx0ax0dx0a总结: x0dx0amysql -u root -p x0dx0amysql>use mysql; x0dx0amysql>select 'host' from user where user='root' x0dx0amysql>update user set host = '%' where user ='root' x0dx0amysql>flush privileges; x0dx0amysql>select 'host' from user where user='root' x0dx0a第一句是以权限用户root登录 x0dx0a第二句:选择mysql库 x0dx0a第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称) x0dx0a第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址 x0dx0a第五句:刷新MySQL的系统权限相关表 x0dx0a第六句:再重新查看user表时,有修改。。 x0dx0a重起mysql服务即可完成。
⑨ 如何远程访问MySQL数据库详解
默认情况下,mysql只允许本地登录,如果要开启远程连接,则需要修改/etc/mysql/my.conf文件。
一、修改/etc/mysql/my.conf
找到bind-address = 127.0.0.1这一行
改为bind-address = 0.0.0.0即可
二、为需要远程登录的用户赋予权限
1、新建用户远程连接mysql数据库
grant all on *.* to admin@'%' identified by '123456' with grant option;
flush privileges;
允许任何ip地址(%表示允许任何ip地址)的电脑用admin帐户和密码(123456)来访问这个mysql server。
注意admin账户不一定要存在。
2、支持root用户允许远程连接mysql数据库
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
flush privileges;
三、查看系统用户