3.本地网页发布
这时我们在本地电脑上安装了SQL Server和cpolar,接下来我们就可以使用cpolar内网穿透,创建一条能够从公共互联网上直连本地SQL Server的数据隧道,达到远程访问SQL Server的目的。
需要注意的是,cpolar免费版设置的数据隧道地址以24小时为周期进行重置,VIP版则可以创建长期稳定不变化的数据隧道地址。但我们并不知道何时会需要远程连接数据库(笔者就因疫情临时管控吃过大亏),因此笔者将cpolar升级至VIP版,以便创建能够长期稳定的数据隧道。
3.1 Cpolar云端设置
首先,我们登录cpolar客户端,在仪表台页面左侧找到预留按钮,进入数据隧道的“预留”页面。
在cpolar的预留页面,我们找到保留的TCP地址栏位,为我们要连接的SQL Server设置一个公网地址,这个地址可以看做是数据隧道的入口,也可以理解为空白数据隧道(毕竟这里设置的隧道入口还没有关联本地软件的输出端口)。
在保留的TCP地址栏位,我们只要进行两项简单的设置:
- 地区:即服务器所在区域,我们就近选择即可
- 描述:可以看做这条数据隧道的注释,只要方便分辨即可
完成这两项设置后,就可以点击右侧的“保留”按钮,将这条数据隧道的入口固定下来。
这里我们需要将地址栏位的内容复制下来,在cpolar客户端进行设置时会需要到这个地址。当我们不再需要这条数据隧道时,还可以点击右侧的x将这条保留的隧道删除,节约珍贵的隧道名额。
免费版的临时数据隧道不需要进行cpolar云端设置,可直接进行cpolar客户端设置,但也就无法设置能够长期稳定存在的数据隧道。
3.2 Cpolar本地设置
接着,我们回到本地电脑上安装的cpolar客户端(可以从开始菜单点击快捷方式,也可以直接在浏览器输入localhost:9200访问)。在cpolar的客户端左侧,我们点击隧道管理项下的创建隧道按钮,进行本地数据隧道的设置,将cpolar云端创建的隧道入口与本地SQL Server连结起来。
当然了,想要创建数据隧道,仍需要进行一些设置,具体为:
隧道名称:该栏同样可以看做是数据隧道的备注,用于与其他本地创建的隧道进行区分,这里我们输入微软SQL;协议:该栏是内网穿透的应用场景,如发布网页、数据传输、硬件互联等,本例中选择TCP协议;本地地址:该栏需要填入SQL Server的输出端口号,即端口1433(SQL Server的默认端口号);端口类型:该栏主要是内网穿透数据隧道的持续时间,打算长期使用的点选固定TCP端口;若只是测试或临时使用,则选择随机临时TCP端口(需要注意的是,固定TCP端口需要将cpolar升级至专业版及以上)预留的TCP地址:该栏位仅限于选择了“固定TCP端口”的用户,若勾选的是“随机临时TCP端口”选项,则不会出现该栏位。填写我们刚刚保留成功的固定TCP端口地址。
在完成这些设置后,就可以点击下方的创建按钮,将cpolar云端保留的空白数据隧道与本地SQL输出端口连结起来。
完成本地数据隧道的创建后,cpolar客户端会自动跳转至隧道管理项下的隧道列表页面。
在这里,我们能清晰的看到所有数据隧道的运行情况(是否正常在线或断开),并对某条数据隧道进行操作,如启动、停止或删除,如果想要对已有的数据隧道进行信息更改,也可以在这里找到编辑入口。
4.公网访问测试
完成cpolar客户端的设置后,我们可以点击状态项下的在线隧道列表页面,找到远程访问本地SQL Server的地址(也就是隧道入口),我们将这个地址粘贴到不同的远程数据库管理软件中,就能连接到本地的SQL Server上。
比如Windows命令行下(公网地址的最前面的tcp://无需复制)
sqlcmd -s 公网地址:公网端口号
或者使用Navicat工具,在连接页面的主机栏位,填入cpolar生成的地址(去掉最前面的tcp://,并将末尾数字端口号前的冒号:改为逗号,)
同理,我们还能使用SSMS图形界面进行远程连接,同样在连接界面,将cpolar生成的地址粘贴到服务器名称栏位(去掉最前面的tcp://,并将末尾数字端口号前的冒号“:”改为逗号“,”),就能连接到本地电脑上的SQL Server。
5.结语
至此,我们就完成了将本地Microsoft SQL Server通过远程登录的设置,并且使用cpolar生成的地址,能从多个数据库管理软件登录到SQL Server上,大大增加了我们工作的便利性。









