SQLServer
SQL Server Express 是一个 SQL Server Express 是 Microsoft 官方 SQL Server 免费发行版,它被用于 SQL 数据库/关系数据库 等场景。SQL Server Express 是 Microsoft 官方 SQL Server 免费发行版。易于部署并可无偿获取并可以随应用程序免费再分发。
准备
在参阅本文档使用 SQL Server Express 时,需要确保如下几点:
-
应用是基于 Websoft9 安装的
-
请检查应用的使用许可协议,确保符合要求
-
应用具备访问条件:配置域名 或 服务器安全组开启网外端口
申明
本文档中所涉及的 SQLServer 均为 Express 版本,可以免费使用或分发。详情参考官方:许可条款
产品 License 清单:
Express版本与企业版相比,功能更少(例:SQLServer 2016 各个版本功能对比)。
另外,它针对服务器有如下的限制:不超过1个处理器,不超过10G数据存储
入门指南
初始化
Websoft9 控制台安装 SQLServer 后,通过 "我的应用" 查看应用详情,在 "访问" 标签页中获取登录信息。
- Linux
- Windows
Linux环境下使用 CloudBeaver 来验证 SQL Server 数据库:
-
登录 CloudBeaver,连接【SQL SERVER】,管理数据库:点击右上角【Settings】图标,选择【Administration】>【Connection Management】,添加 SQL SERVER
-
填写数据库基本信息,点击【Create】
-
点击左上角 Cloud Beaver 图标,SQL Server 数据库连接成功,可以方便管理数据库
-
使用本地电脑的 远程桌面工具,登录到服务器
-
打开 SQLServer企业管理器,通过:【服务器名称】>【浏览更多...】选择服务器,并以【Windows身份】登录数据库
-
重启 SQL Server 服务,使配置生效。
获取服务器名称(ID)
使用 SQLServer 企业管理器 连接数据库时,除了填写 .
或 (local)
之外,也可以直接填写服务器名称(ID)。
这个 ID 获取的方式有两种:
-
从 Windows 系统中获取:【我的电脑】>【属性】,计算机名即我们所需的 ID
-
从 SQLServer企业管理器获取:【服务器名称】>【浏览更多...】选择服务器,并以【Windows身份】登录数据库
启用密码(SQL Server 身份验证模式)
默认没有启用密码登录方式(SQL Server 身份验证模式),参考下面的步骤设置:
-
SQLServer 企业管理器中:通过【属性】>【安全性】>【服务器身份验证】,选择 SQLServer 和 Windows 身份验证模式
-
启用 sa 账户,并设置密码:依次展开【安全性】、【登录名】,找到默认登录名【sa】,右键【属性】,在弹出的窗口中点击【状态】,将登录选项选择【已启用】,也可以在【常规】选项卡里设置你的登录密码,点击确认保存.
-
重启 SQL Server 服务,使配置生效。
管理维护
开启远程访问
通过本地电脑远程访问 SQLServer,需完成如下设置:
SQLServer 服务端开启远程连接
本镜像默认完成了SQLServer远程访问的配置,但为了能够顺利访问,SQLServer所在的服务器还需完成如下两个设置:
-
打开SQLServer企业管理器工具,在服务器【连接】属性中,勾选【允许远程连接到本服务器】
-
打开SQL Server 配置管理器工具,在网络配置中,启用【TCP/IP】协议
Windows 服务器设置防火墙和端口
-
在Windows服务器防火墙设置中开启远程访问:【控制面板】>【系统和安全】>【Windows防火墙】>【允许程序或功能通过Windows防火墙】
-
在云控制台中,开启服务器安全组的1433端口
客户端工具范例
设置完成上面的服务器之后,下面以Navicat为例来说明如何在本地电脑访问并管理SQLServer
-
下载并安装Navicat
-
在Windows服务器防火墙设置中开启远程访问(请见上一章)
-
在Navicat->新建一个SQLServer连接,填写好连接参数
-
点击【连接测试】,成功表明参数没有问题。
-
点击【确认】后,进入数据库管理界面
SQL Server 更新
SQLServer更新只能是卸载旧版本,然后下载最新的安装包重新安装
SQL Server 数据库迁移
SQLServer 数据库存储目录更改:
-
打开服务列表,先将 SQL Server (MSSQLSERVER) 服务停止;
-
将默认的数据库文件拷贝到新的存放位置;
默认存放目录为:C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL
-
再次启动服务,打开SQL客户端,找到实例,右键实例选择属性;
-
在属性中选择 数据库设置,修改数据的存放目录;
-
最后重启 SQL Server (MSSQLSERVER) 服务,新建一个数据库测试是否在新的存放目录下生成该数据库;
-
确保新目录生效后,再将原来的目录下的数据库文件删除。
SQL Server 手动备份
通用的手动备份操作步骤如下:
- 访问SQLServer企业管理器,在需要备份的数据库上点右键,选择任务->备份,弹出备份数据库窗口。
- 根据备份向导逐步完成备份工作
SQL Server Express 自动备份
SQL Server Express的数据库由于没有SQL Server Agent服务,所以也就不支持维护计划功能,自动备份数据库就成了一个十分麻烦的问题。
引入 SQL Backup Master
经过研究,我们建议采用第三方工具 SQL Backup Master 实现自动备份。SQL Backup Master 是一款免费可靠的 SQL Server 数据库备份工具,主要特性:
- 支持完整备份,差异备份,事务日志备份
- 简单强大的计划任务
- 内置邮件通知
- 支持备份到本地/网络文件夹/网络存储
- 支持备份到FTP/SFTP/FTPS服务器
- 支持备份到Dropbox,Google Drive,Box,Amazon S3,OneDrive和Azure
- 支持操作系统: Windows 10, 8, 7, Vista 和 Windows Server 2008/2012/2016
- 支持SQL Server版本 : SQL Server 2017, 2016, 2014, 2012, 2008, 2005
SQL Backup Master 指南
-
从官网下载安装好 SQL Server Master,双击【运行程序】。
-
创建数据库备份任务
-
选择数据库,并连接数据库
-
选择需要备份的数据库,并进行设置
-
设置计划任务
-
保存设置
备选方案:计划任务
除了使用 SQL Backup Master 这个工具之外,也可以采用服务器系统的任务计划和备份数据库的存储过程来实现,参考:
参数
发行版
- Windows 服务器适用于: SQL Server Express 2005, 2008, 2012, 2014, 2016, 2017
- Linux 服务器适用于: SQL Server Express 2017 2019 2022
路径
- Linux
- Windows
SQL Server 安装目录: /data/apps/sqlserver
SQL Server 数据目录: /data/apps/sqlserver/data/mssql_data
以SQL Server 2014为例,集成包中包括 SQL Server 2014 数据库引擎和 SQL Server Management Studio Express,具体包括:
- 操作系统: Windows Server系统
- 软件版本: SQL Server2014 R2 SP2 Express Edition,SQL Server Management Studio, Microsoft .Net Framework 4.6,IIS7
- 软件目录: C:\Program Files\Microsoft SQL Server
- 数据库引擎数据目录:C:\Program Files (x86)\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA
服务
- Linux
- Windows
sudo docker start | stop | restart | stats mssql
sudo docker start | stop | restart | stats cloudbeaver
可视化界面管理
使用 SQL Server 身份验证登录数据库。打开SQL Server 配置管理器工具,重启 SQL Server 服务。
命令行与 API
也可以使用 cmd 工具,通过命令的方式启动或关闭数据库
- 快速启动命令:net start mssqlserver
- 关闭服务:net stop mssqlserver
- SQL Server 管理器打开的命令是:ssms
详情参阅:mssql-cli和SQL Assessment API
故障
无法使用 SQLServer 密码登录?
为了安全考虑,本部署方案没有创建 SQLServer 的登录密码。参考:启用密码
SQLServer 服务启动失败?
请检查服务器名称是否正确:在【服务器名称】中通过【浏览更多...】选择正确的服务器