我将 SQL Server 2019 安装在具有 4GB 内存的新 Ubuntu 实例上,因为它有时会在具有 3GB 内存的旧 Ubuntu 20.10 实例上崩溃。然而,问题在新服务器上更加严重,它似乎在大约一小时后就会失败,并且只是说服务在运行时已停止sudo systemctl status mssql-server
运行。SQL Server 2017 和 2019 曾经在仅具有 3GB 内存的这台虚拟机上顺利运行。
我的服务器上有 13 个数据库,大小都在 1 GB 以下(大多数在 50MB 到 200MB 之间),并且这些数据库的连接应该只有少数。
我看到的错误是:
mssql-server.service: Main process exited, code=exited, status=255/EXCEPTION
我尝试将内存限制为 2GB 或 3GB,或将其设置为默认的更高值。2GB 似乎是支持的最小值,我原以为这已经足够了。
我真的不知道该怎么做才能防止此 SQL Server 实例崩溃并退出。服务器有可用的 CPU 和内存,其他服务不受影响并保持运行。
一切都是最新的apt upgrade
,并且 SQL Server 显示为版本 15.0.4083.2。
我将非常感激任何帮助/想法。
谢谢罗宾
答案1
我想我现在可能已经找到了解决方案。
检查更新unixodbc
一直被阻止,我注意到它说的是 ODBC,所以认为它可能与问题有关。它似乎无法安装,因为缺少多架构支持,因为尝试apt install unixodbc
导致有关缺少多架构支持和未满足依赖关系的另一个错误。
我运行以下命令来安装多架构支持:
cd ~/Downloads
wget http://archive.ubuntu.com/ubuntu/pool/main/g/glibc/multiarch-support_2.27-3ubuntu1.4_amd64.deb
sudo apt-get install ./multiarch-support_2.27-3ubuntu1.4_amd64.deb
(从安装 odbcins1debian2,Ubuntu 20.04 LTS 上的依赖关系已损坏)
然后运行 apt upgrade 安装unixodbc
,我的 SQL Server 从那时起一直在工作。它之前管理了大约一个小时,但现在长达 3 小时 10 分钟,所以希望现在这个问题已经解决了。这是 Ubuntu 20.10 的全新安装,因此想必每个尝试安装到此版本的人都会遇到同样的问题。似乎旧版本unixodbc
不需要多架构支持。