首页系统综合问题外网远程访问SQL Server数据库「无公网IP」

外网远程访问SQL Server数据库「无公网IP」

时间2023-01-13 11:02:04发布分享专员分类系统综合问题浏览209

今天小编给各位分享国外服务器免费ip地址的知识,文中也会对其通过外网远程访问SQL Server数据库「无公网IP」和如何远程连接SQL Server数据库等多篇文章进行知识讲解,如果文章内容对您有帮助,别忘了关注本站,现在进入正文!

内容导航:

  • 外网远程访问SQL Server数据库「无公网IP」
  • 如何远程连接SQL Server数据库
  • sql 怎样外网连接远程数据库?
  • 如何设置外网访问sql2008数据库服务器
  • 一、外网远程访问SQL Server数据库「无公网IP」

    在本地局域网内的SQL Server数据库,一般只能在局域网内访问,想要在外网/公网也可以远程访问到局域网的SQL Server数据库,可以通过两种方式来实现。

    公网IP+端口映射内网穿透

    第一种,公网IP+端口映射,前提是需要有真实的公网IP,但由于IPV4资源不足,无法为每个用户分配到独立的公网IP,也就是说绝大部分的用户被分配到的其实都是局域网IP。

    而要做端口映射的前提是,需要用户有真实的公网IP,并进入到路由器进行映射。所以对于没有被分配到公网IP的用户,可以通过第二种内网穿透,来实现外网远程访问SQL Server数据库。

    第二种,内网穿透,其原理是通过第三方有公网IP的服务器进行数据转发,将本地端口映射到公网上,生成相应的公网地址来进行连接。

    比如cpolar内网穿透,亲测好用,也支持免费套餐,使用简单,只需要在本地安装下载客户端,完成简单的配置后,就可以创建隧道将本地端口映射到公网。

    1. 安装配置cpolar内网穿透客户端(支持永久免费)

    需要先注册一个cpolar账号,后面会用到。

    cpolar - 安全的内网穿透工具

    1.1 Windows

    windows系统可以在cpolar官网下载最新的安装包,然后解压默认安装即可。

    1.2 Linux

    linux系统支持一键自动安装脚本

    1.2.1 安装

    国内使用

    curl -L https:///static/downloads/install-release-cpolar.sh | sudo bash

    国外使用

    curl -sL https://git.io/cpolar | sudo bash

    1.2.2 向系统添加服务

    sudo systemctl enable cpolar

    1.2.3 启动服务

    sudo systemctl start cpolar

    1.2.4 查看服务状态

    sudo systemctl status cpolar

    如正常显示active,则说明已经启动成功。

    创建隧道将本地1433端口映射到公网上
    cpolar tcp 1433

    隧道创建成功后,会生成相应的公网地址,在外网环境下使用所生成的公网地址,就可以远程访问到内网的SQL Server数据库。

    一、如何远程连接SQL Server数据库

    1、远程连接无法使用服务器名称访问,需要使用服务器IP地址+,+端口号如:10.10.10.1,5122 ,中间为半角逗号,如果用默认1433端口,“,端口号”可以省略。
    2、登录用户,只能使用SQL身份验证。

    3、如果是局域网内服务器,还需要路由设备,设置端口转向或者是虚拟服务器:
    类似图中的设置,只要设置外部端口,内部端口,内部ip地址。

    4、如果是动态IP的宽带,还需要类似花生壳的ip地址转向,主要作用是在公网IP改变时,不需要通知需要连接服务器的用户。
    5、服务器上远程登录要打开,在服务器属性页面的连接选项卡中如图:

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

    要点:
    1.确认服务器端SQL服务端口号是否为:1433
    2.如果不是1433,配置客户端
    3.建立服务器端登录帐号,确保角色及管理数据库
    一、查看服务器端情况
    1. 看ping 服务器IP能否ping通。
    这个实际上是看和远程sql server 服务器的物理连接是否存在。如果不行,请检查网络,查看配置,当然得确保远程sql server 服务器的IP拼写正确。
    2. 在Dos或命令行下输入telnet 服务器IP 端口,看能否连通。
    如telnet 202.114.100.100 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 127.0.0.1 1433 listening 的项。如果没有,则通常需要给sql server 2000打上至少sp3的补丁。其实在服务器端启动查询分析器,输入select @@version 执行后可以看到版本号,版本号在8.0.2039以下的都需要打补丁。
    如果以上都没问题,这时你再做telnet 服务器ip 1433 测试,将会看到屏幕一闪之后光标在左上角不停闪动。恭喜你,你马上可以开始在企业管理器或查询分析器连接

    三、如何设置外网访问sql2008数据库服务器

    在设置外网访问SQL2008数据库 之前,首先必须保证局域网内访问SQL2008没有问题 。那么,我们先来看看局域网内访问SQL2008数据库需要哪些步骤和设置,才能做到在局域网内任何一台机器上输入SQL2008数据库IP地址和端口号即能访问。
    1.SQL2008数据库端设置
    通常一台机器装上SQL2008后,要实现局域网访问SQL2008只要几步。
    1)打开SQL2008配置工具,步骤:【开始】—>【所有程序】—>【Microsoft SQL Server 2008】—>【Configuration Tools】—>【SQL Server Configuration Manager】;
    2)在打开的配置界面,双击左边【SQL Server 网络配置】,可以看到本机安装的数据库实例的协议,一般有【SQL Express的协议】和【MSSQLSERVER】的协议,如果你安装时不是使用默认实例名,那么在这里你应该找到自己需要设置外网访问的数据库实例名,双击它;
    3)此时,可以看到四个协议,一般启用前三个,禁用最后一个,即启用【shared memory】、【named pipes】和【TCP/IP】,禁用【VIA】;
    4)启用【TCP/IP】后,顺便应该鼠标右键该协议属性,设置下开放的端口,在IP1-IP9中都可以设置成1433,【活动】和【已启用】都选择【是】,最后一个IPALL也可设置成1433;ok,这时必须在配置页面的SQL Server服务项下面重启服务器,才能使得设置生效,如果这样还不行,建议重启电脑。
    5)可以关闭了配置工具了,接下来打开【SQL Server Manager Studio】,登入您的数据库,打开后在【对象资源管理器】找到你数据库服务器的根节点,鼠标右键,选择【方面】,在方面下拉菜单下选择【外围应用配置】,在下面找RomoteDacEnabled,设置为True,然后重启数据库;(这个选项在我的设置过程中貌似没有起到作用,不设置为True好像远程也能访问);
    6)设置到这里基本上就可以实现局域网内访问SQL2008数据库了。如果还不行,请将X:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn\sqlservr.exe在windows防火墙中设置程例外,也将X:\Program Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe设置成例外,把1433端口也设置成例外。

    关于国外服务器免费ip地址的问题,通过《sql 怎样外网连接远程数据库?》、《如何设置外网访问sql2008数据库服务器》等文章的解答希望已经帮助到您了!如您想了解更多关于国外服务器免费ip地址的相关信息,请到本站进行查找!

    爱资源吧版权声明:以上文中内容来自网络,如有侵权请联系删除,谢谢。

    国外服务器免费ip地址
    一个42KB的文件,解压完其实是个4.5PB的“炸弹”…… 上海高三、高二、初三学生返校复学时间定了!复学后每日需“两测两检”