Win11下安装SQL Server2012的曲折过程

那天我坐在电脑前,手边放着SQLServer2 01 2 的安装包,心里盘算着能在Win1 1 上跑起来。
想着这玩意儿在Win1 0上还顺顺当当,换新系统总该省心点。
结果,屏幕上弹出的错误提示像泼冷水似的,“等待数据库引擎恢复句柄失败”。
这玩意儿听着挺玄乎,跟丢了魂似的。

先试了权限,改成System账户,卸了装,重了启,折腾了俩钟头,错误提示还是笑眯眯地待在那儿。
心里直嘀咕,这系统咋跟犟驴似的。
又查硬盘扇区,跑了好几遍检测工具,折腾完又是一个钟头,硬盘跟新的一样,错误提示照样不依不饶。
这时候手机响了,哥们儿发来消息说试了TLS版本,好像有点眉目,赶紧改了注册表,又是一个钟头过去,错误提示还是不见踪影。

转机出现在晚上,我又试了那个命令行启动法,这次报错信息变了,说是1 4 3 3 端口被占用了。
心想这端口咋跟我的停车位似的,总被别人占着。
用netstat查了半天,进程列表跟小说似的,啥也没找到。
这时候突然想起配置管理器,打开一看,嘿,SQLServer的端口还默认开着呢。
心想这端口要是被别的程序占用了,我这SQLServer就开不了了。
赶紧改了个端口,1 4 3 3 3 ,这回启动服务时,错误提示不见了,心里那叫一个美。

这时候我坐在沙发上,想着这SQLServer2 01 2 在Win1 1 上安装的曲折过程,从权限问题到硬盘扇区,再到TLS版本,最后锁定到端口占用。
这过程跟我在菜市场买菜似的,本来只想买点青菜,结果被摊主拉住卖了个鱼,还差点被宰。
不过话说回来,这过程虽然曲折,但也学到了不少东西。
比如,遇到问题时不能急,得一步步排查,不能像我这似的,看见错误提示就慌了神。
再比如,SQLServer这玩意儿对系统环境还挺挑剔的,得提前查好资料,不能像我这似的,想当然地以为它能随便装。

现在SQLServer2 01 2 在Win1 1 上跑得挺顺,但心里总有个疑问:这端口占用问题,到底是谁干的?是系统自带的程序,还是我之前装的某个软件?这事儿得再查查,不能让这端口问题再给我添麻烦了。

win11家庭版能不能装sql2016

说白了,装SQL Server自动运行功能兼容XPSp2 确实得折腾点,但不是难事。

展开来说,关键得改注册表里的Autorun键值,用regedit打开,找HKEY_CLASSES_ROOT\CLSID\{你的SQL安装CLSID}这串路径,把默认值改成shell\Autorun,再新建个command字段填"你的SQL安装路径\autorun.exe"。
去年我们跑那个项目,这个路径大概在C:\Program Files\Microsoft SQL Server\...下面,得确认权限,右键选"以管理员身份运行"这个操作得重复三次——注册表、AUTORUN文件、服务管理器。
另外,记得在服务管理器里把SQL Server Agent服务设成自动启动,否则半夜数据备份全白跑。
还有个细节挺关键的,装完右键点"以管理员身份运行"别觉得烦,XP系统防护机制就是这么设计的。

我一开始也以为改个注册表多简单,结果发现XP系统对权限控制特别死板,连C:盘根目录都得管理员权限。
等等,还有个事,SQL语言确实牛,但别把简单当傻瓜,比如SELECT FROM table这种写法,数据量大时用分页查询LIMIT会更省事。

建议你装完后,再开个SQL Server Management Studio,把兼容性设置再确认一遍,别半夜蓝屏杀进程。