由于项目需要对接生产系统,但是生产系统使用的是access数据库(这么老还在用,不知道咋想的),客户又想把项目部署到阿里云上,需要阿里云远程连接本地的access数据库(心里一句MMP送上),没办法,客户为大,想办法解决吧。
解决方案:
首先在电脑上安装sqlserver数据库,将access数据迁移到sqlserver,然后将access对应的表连接到sqlserver,这样就实现了将access改为sqlserver数据库,剩下的就比较简单了,只需要将sqlserver的端口号通过内网穿透就可以外部访问了。
实现
1、安装SqlServer
1、在电脑安装SqlServer数据库,也可以直接使用迷你sql2000,需要的可以直接下载)
链接地址
网盘下载
链接:https://pan.xunlei.com/s/VNUZpb8c9QalnGWNQPNZ4sZzA1#
提取码:qi6p
2、解压后双击sql2k.exe即可启动,然后点击解锁,输入密码123,然后创建数据库。
2、迁移access到SQLServer
1、打开access,然后点击外部数据,选择odbc数据库,选择通过创建链接表来链接到数据源,然后点击确定
2、新建链接dsn,点击新建dsn,在弹出的窗口里选择SQL Server,点击下一步
3、然后选择链接保存位置,输入保存的名称,点击保存,然后点击下一页,然后点击完成,弹出配置SQL Server信息窗口
4、输入服务器信息(就是你安装的sqlserver的ip地址),点击下一页,在弹出的页面中配置sqlserver信息,选择登录id及密码,然后点击客户端配置,在弹出的页面输入sqlserver的ip及端口号,点击确定,然后在上一页中输入sqlserver的用户名密码点击下一页
5、在弹出的窗口上勾选更改默认数据库,选择刚才新建的数据库,然后点击下一步,然后在弹出的页面上点击完成,弹出odbc sqlserver安装页面,可点击测试数据源测试是否链接成功,链接成功后点击确定即可。(如果链接失败可查看是否sqlserver配置错误,安装sqlserver的电脑防火墙是否开放端口)
6、在弹出的页面中输入sqlserver密码,然后会弹出该数据库中所有的表,由于我们还没有将access导入到sqlserver,所以直接点确定即可。
如果不需要迁移数据可直接跳到第三步
7、选择要迁移到sqlserver的表,右键点击导出,选择odbc数据库,输入在sqlserver中表的名字,然后点击确定,然后选择刚才保存链接的位置,再次输入sqlserver数据库密码,点击确定即可。出现提示导出成功按钮就可以去sqlserver数据库查看数据了。
3、将SqlServer链接到access
1、导出成功之后,再次点击外部数据,选择ODBC数据库,选择保存的dsn链接,点击确定,然后输入密码,会显示出sqlserver下所有的表数据,然后选择需要链接的表,点击确定,弹出选择表的主键页面点击字段选择主键点击确定即可。
2、在左侧对象中会出现新添加的表数据,然后将原有表删除,将刚导入的表改为删除的表名称就大功告成了。
4、内网穿透
内网穿透就不多说了,有云服务器的可以用frp,没有云服务器的可以用花生壳或者其他方法