sql 怎样外网连接远程数据库

sql 怎样外网连接远程数据库,第1张

要点:

1确认服务器端SQL服务端口号是否为:1433

2如果不是1433,配置客户端

3建立服务器端登录帐号,确保角色及管理数据库

一、查看服务器端情况

1 看ping 服务器IP能否ping通。

这个实际上是看和远程sql server 服务器的物理连接是否存在。如果不行,请检查网络,查看配置,当然得确保远程sql server 服务器的IP拼写正确。

2 在Dos或命令行下输入telnet 服务器IP 端口,看能否连通。

如telnet 202114100100 1433

通常端口值是1433,因为1433是sql server 的对于Tcp/IP的默认侦听端口。如果有问题,通常这一步会出问题。通常的提示是“……无法打开连接,连接失败"。

如果这一步有问题,应该检查以下选项。

1) 检查远程服务器是否启动了sql server 服务。如果没有,则启动。

2) 检查sql server服务器端有没启用Tcp/IP协议,因为远程连接(通过因特网)需要靠这个协议。检查方法是,在服务器上打开 开始菜单->程序->Microsoft SQL Server->服务器网络实用工具,看启用的协议里是否有tcp/ip协议,如果没有,则启用它。

3) 检查服务器的tcp/ip端口是否配置为1433端口。仍然在服务器网络实用工具里查看启用协议里面的tcp/ip的属性,确保默认端口为1433,并且隐藏服务器复选框没有勾上。

事实上,如果默认端口被修改,也是可以的,但是在客户端做telnet测试时,写服务器端口号时必须与服务器配置的端口号保持一致。如果隐藏sql server服务器复选框被勾选,则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接,但是Tcp/ip协议的默认端口将被隐式修改为2433,在客户端连接时必须作相应的改变(具体方式见 二:设置客户端网络实用工具)。

4) 如果服务器端 *** 作系统打过sp2补丁,则要对windows防火墙作一定的配置,要对它开放1433端口,通常在测试时可以直接关掉windows防火墙(其他的防火墙也关掉最好)。(4、5步我没有做就成功了)

5) 检查服务器是否在1433端口侦听。如果sql server服务器没有在tcp连接的1433端口侦听,则是连接不上的。检查方法是在服务器的dos或命令行下面输入

netstat -a -n 或者是netstat -an,在结果列表里看是否有类似 tcp 127001 1433 listening 的项。如果没有,则通常需要给sql server 2000打上至少sp3的补丁。其实在服务器端启动查询分析器,输入select @@version 执行后可以看到版本号,版本号在802039以下的都需要打补丁。

如果以上都没问题,这时你再做telnet 服务器ip 1433 测试,将会看到屏幕一闪之后光标在左上角不停闪动。恭喜你,你马上可以开始在企业管理器或查询分析器连接

一、如果只是想通过笔记本远程桌面到SQL服务器,方法很多,用teamviewer,或者最新版QQ都能自动远程桌面;

二、若是笔记本客户端要读取SQL数据库应用,主要方法有:

在SQL服务器安装花生壳,并申请免费域名;

通过路由器设置端口映射;

开放SQL服务器1433,1434端口。

具体参考图文说明:>

三、若有固定IP,则可以通过WINDOWS 2003组建***及远程路由访问服务器,笔记本创建***拨号段,通过***进行访问。

Oracle 11g 安装完成后,只能在本机访问,希望其远程计算机也能访问,刚开始直接修改listenerora文件# listenerora Network Configuration File: C:\app\Administrator\product\1120\dbhome_1\network\admin\listenerora# Generated by Oracle configuration tools

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = CLRExtProc)

(ORACLE_HOME = C:\app\Administrator\product\1120\dbhome_1)(PROGRAM = extproc)

(ENVS = "EXTPROC_DLLS=ONLY:C:\app\Administrator\product\1120\dbhome_1\bin\oraclr11dll"))

)

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)))

)

ADR_BASE_LISTENER = C:\app\Administrator

将localhost直接改为本机Ip地址,重启监听服务停止监听:lsnrctl stop

启动监听:lsnrctl start

查看监听:lsnrctl status

结果失败。

正确的方式,运行Net Configuration Assistant,修改监听配置,一步一步即可,无需修改任何数据结果listenerora文件变为:

# listenerora Network Configuration File: C:\app\Administrator\product\1120\dbhome_1\network\admin\listenerora# Generated by Oracle configuration tools

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = CLRExtProc)

(ORACLE_HOME = C:\app\Administrator\product\1120\dbhome_1)(PROGRAM = extproc)

(ENVS = "EXTPROC_DLLS=ONLY:C:\app\Administrator\product\1120\dbhome_1\bin\oraclr11dll"))

)

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = WIN-VI5UF46V3UG)(PORT = 1521)))

)

ADR_BASE_LISTENER = C:\app\Administrator

Host处变为主机名,这样远程计算机就可以访问服务器了。

无需修改服务方式为共享还是专用,无需修改IP地址,可能该向导在后面自动做了很多工作

1 如果你可以调整单位的 防火墙 或者 路由器

你可以做nat地址转换, 将单位对外服务器上的 某2个 端口 映射到 局域网上数据库的 1433和1434端口。

不过这样 就把 数据库暴露在外网了, 有风险

2 楼上说的***,是很安全的做法, 不过需要架设***才行。

3 其他好像什么办法了。

整体简介:

为了安全起见默认情况下Mysql数据库的监听地址是127001,就是指本机下的程序才能访问。

监听地址是0000 ,表示该mysql允许所有IP地址进行连接,这是允许远程连接的基础

监听地址是127001,则代表该mysql只允许所在服务器本机连接,外网是无法连接的

所需工具原料:

Linux,apache,php,mysql

解决方法:

1 用命令vi 编辑/etc/mysql/mycnf 如图:

在[mysqld]节中增加下面一行:

2 bind-address=0000  #全部地址或者指定的ip地址如图所示

3 重启服务

service mysqld restart

4 Linux服务器中执行如下命令可以查看:    netstat -nutlp|grep mysql(只查看mysql的监听), netstat -tln(查看所有的监听)是否成功。

以上就是关于sql 怎样外网连接远程数据库全部的内容,包括:sql 怎样外网连接远程数据库、外网通过路由器连接本地的数据库、oracle11g数据库怎么外网连接数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/sjk/9763492.html

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

发表评论

登录后才能评论

评论列表(0条)

保存