温馨提示×

SQLServer在Debian怎授权

小樊
52
2026-10-10 12:05:12
栏目: 云计算

在 Debian 上运行 SQL Server(Microsoft SQL Server on Linux) 时,“授权”通常指 登录账号、数据库权限、以及操作系统/服务账号的授权。下面按常见场景说明。


一、SQL Server 登录账号授权(最常见)

1. 使用 SA 登录

安装后先用 sa 登录:

sqlcmd -S localhost -U SA -P '你的SAPassword'

2. 创建 SQL 登录账号

CREATE LOGIN appuser WITH PASSWORD = 'StrongPassword!';

3. 授权数据库访问

USE YourDB;
CREATE USER appuser FOR LOGIN appuser;

4. 授权角色(示例)

-- 只读
ALTER ROLE db_datareader ADD MEMBER appuser;

-- 读写
ALTER ROLE db_datawriter ADD MEMBER appuser;

-- 数据库 owner(谨慎)
ALTER ROLE db_owner ADD MEMBER appuser;

二、Windows 身份验证(不支持)

⚠️ SQL Server on Linux 不支持 Windows 集成登录(AD 除外)

可选方案:

  • SQL 账号 + 密码
  • Active Directory 认证(仅企业版,且需配置)

三、AD(Active Directory)授权(进阶)

若使用 AD:

  1. 将 SQL Server 加入域
  2. 创建 AD 登录:
CREATE LOGIN [DOMAIN\user] FROM WINDOWS;

⚠️ 配置复杂,生产环境才建议


四、Debian 系统层授权(服务运行账号)

SQL Server 在 Debian 上以系统用户运行:

mssql

查看:

ps aux | grep sqlservr

一般 不需要手动改权限,除非:

  • 使用自定义数据目录
  • 挂载磁盘

授权示例:

sudo chown -R mssql:mssql /data/sqlserver
sudo chmod 750 /data/sqlserver

五、防火墙端口授权(网络层)

SQL Server 默认端口:

1433

开放端口:

sudo ufw allow 1433/tcp

或限制 IP:

sudo ufw allow from 192.168.1.100 to any port 1433

六、查看当前权限

SELECT * FROM sys.database_role_members;
SELECT * FROM sys.server_principals;

七、常见错误

问题 原因
登录失败 密码策略 / 账号被禁用
无法访问库 未 CREATE USER
权限不足 未加角色
服务起不来 目录权限不对

如果你能具体说:

  • 是 SQL 账号授权
  • 还是 Linux 文件/服务权限
  • 还是 远程连接授权

我可以给你更精确的命令。

0 踩