sql server 非sa账号配置发布订阅

如果有些源端环境,sa账号被禁用,或者有其他问题,那可以按以下步骤操作。

使用高权限账户登录,另外需要拥有源端windows用户管理员的账号和密码

表发布订阅成功的前提:发布的表必须有主键。

创建一个专门用于发布订阅的账号:

用户名ydlr_rep

密码 **********

在实例的安全性-》登录名下面创建,如图

给与dbo,db_owner权限。

以annetest数据库为例:

点击确定。

查看annettest数据库下面,有了ydlr_rep这个用户

下面用ydlr_rep这个用户登录,创建发布订阅试一下。

提示

目前所有者是sa

更改所有者提示

在安全性,登录名中取消映射。(这一步操作非常危险,如果业务账号,会导致暂时无法访问对应数据库)

点击确定。

然后再更改数据库拥有者:

然后数据库拥有者变更成功,如下图所示:

登录名的用户映射中变为:

再使用ydlr_rep 用户登录创建发布试一下。

可以看到原先的发布,直接删除会报错,但去除对应表后,可以删除。

新建本地发布

到快照代理安全性这边,只能使用windows账户,sql server代理账户不可选。

输入以下内容

提示

查找文档 https://learn.microsoft.com/zh-cn/sql/relational-databases/replication/snapshot-agent-security?view=sql-server-ver16

修改windows账户权限

LR-XT-POC-07\Administrator

再配置发布

点击确定后

下一步,创建发布成功。

打开复制监视器:

发布成功了。

订阅端订阅一下试试:

用sa登入订阅端,查找发布服务器的时候,使用ydlr_rep用户。

找到如下发布

点击下一步,选择在分发服务器运行

此处需要配置,使用源端的windows集成用户

点击下一步,选择连续运行

创建订阅成功

右键查看订阅


查看表,发现已经订阅成功。

相关推荐
杨云龙UP1 天前
小工具大体验:rlwrap加持下的Oracle/MySQL/SQL Server命令行交互
运维·服务器·数据库·sql·mysql·oracle·sqlserver
qq_340474024 天前
3.0 labview使用SQLServer
数据库·sqlserver·labview
杨云龙UP6 天前
SQL Server数据库事务日志问题的诊断与解法(从膨胀到瘦身)
运维·数据库·sql·sqlserver·serverless
TiAmo zhang8 天前
什么是SQL Server 2019?
数据库·sqlserver
王家视频教程图书馆8 天前
docker部署mssql
docker·容器·sqlserver
jackletter9 天前
五大关系数据库(sqlserver、mysql、oracle、pgsql、sqlite)的对象名称和转义字符
mysql·postgresql·oracle·sqlserver·sqlite
满昕欢喜11 天前
SQL Server从入门到项目实践(超值版)读书笔记 27
数据库·sql·sqlserver
码农学院12 天前
MSSQL字段去掉excel复制过来的换行符
前端·数据库·sqlserver
杨云龙UP14 天前
20250922_(Linux操作系统上)Oracle、MySQL、MariaDB、SQL Server常用连接命令与基础查询
mysql·oracle·sqlserver·mariadb
小志开发14 天前
SQL从入门到起飞:完整学习数据库与100+练习题
数据库·sql·学习·mysql·oracle·sqlserver·navcat