目录
1.问题
2.解决办法
3.说明
1.问题
网站运行报错:Service broker not enable. Please activete it using 'ALTER DATABASE My Database SET ENABLE BROKER
2.解决办法
服务代理(Service Broker)未启用。请使用 ALTER DATABASE [数据库名] SET ENABLE_BROKER 命令来启用它。
使用的 TableDependency 这个库,依赖 SQL Server 的 Service Broker 功能。它的作用是:
- 实现数据库表变更的实时通知(比如增删改时主动推送给应用)
- 而当前连接的 SQL Server 数据库,这个功能是关闭的,所以程序抛出异常。
-- 先确保没有活动连接(否则命令会卡住) ALTER DATABASE [数据库名] SET SINGLE_USER WITH ROLLBACK IMMEDIATE; -- 启用 Service Broker ALTER DATABASE [数据库名] SET ENABLE_BROKER; -- 恢复多用户模式 ALTER DATABASE [数据库名] SET MULTI_USER;其他补充!
-- 启用 ALTER DATABASE [你的数据库名] SET ENABLE_BROKER; -- 禁用 ALTER DATABASE [你的数据库名] SET DISABLE_BROKER;3.说明
Service Broker 是 SQL Server 自带的功能,启用它不会影响现有业务数据,只是开启了消息队列和通知能力。