Debian SQL Server常见问题解答
安装SQL Server时,可能因缺少libldap-2.4-2等依赖包导致失败。解决方法是手动下载并安装缺失的依赖(如使用sudo apt install libldap-2.4-2),或通过sudo apt --fix-broken install修复损坏的依赖关系。
若SQL Server服务未运行,可通过sudo systemctl status mssql-server查看状态。若未启动,使用sudo systemctl start mssql-server启动,并通过sudo systemctl enable mssql-server设置开机自启。需确保以mssql用户(而非root)运行服务,避免权限问题。
远程连接需解决三方面问题:
ping命令测试SQL Server服务器IP是否可达;sudo ufw allow 1433/tcp或iptables规则);sqlservr监听正确端口。ss -tulnp | grep 1433确认服务是否在监听;sqlcmd命令中的服务器名称(如localhost)、用户名(如SA)、密码正确;tail -f /var/opt/mssql/log/errorlog获取详细错误信息(如认证失败、端口冲突)。max server memory参数(如设置为物理内存的70%),避免内存溢出;Debian MySQL常见问题解答
首先查看错误日志(/var/log/mysql/error.log)定位原因,常见原因包括:
/etc/mysql/my.cnf或/etc/mysql/mysql.conf.d/mysqld.cnf语法(如datadir路径是否正确);/var/lib/mysql)属主为mysql:mysql(sudo chown -R mysql:mysql /var/lib/mysql);df -h检查,清理不必要的文件。需完成以下配置:
bind-address = 127.0.0.1(允许所有IP连接);sudo ufw allow 3306/tcp;CREATE USER 'username'@'%' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'username'@'%';。mysql -u root -p尝试登录;sudo mysql_secure_installation脚本修改密码;SELECT user, host FROM mysql.user;查看用户权限,确保允许远程登录。修改配置文件(/etc/mysql/my.cnf),在[mysqld]和[client]部分添加:
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
[client]
default-character-set=utf8mb4
重启MySQL服务(sudo systemctl restart mysql)使设置生效。
SHOW STATUS LIKE 'Threads_connected';SET GLOBAL max_connections = 1000;),永久生效需修改配置文件(max_connections = 1000)并重启服务;Debian PostgreSQL常见问题解答
检查pg_hba.conf文件(位于/etc/postgresql/{version}/main/),确保有正确的访问控制条目(如host all all 0.0.0.0/0 md5允许所有IP密码登录),修改后执行sudo systemctl reload postgresql使配置生效。
postgresql.conf,设置listen_addresses = '*'(允许所有IP连接);port = 5432(默认),并通过sudo ufw allow 5432/tcp开放端口;sudo systemctl status postgresql确认服务运行。EXPLAIN SELECT * FROM users WHERE age > 30;查看查询计划,找出全表扫描等问题;CREATE INDEX idx_age ON users(age););ANALYZE users;更新表统计信息,帮助优化器选择更优计划。pg_archivecleanup工具(如sudo pg_archivecleanup /var/lib/postgresql/{version}/main/pg_wal 0000000100000001000000AB)删除旧日志;max_wal_size(如设置为20GB)、min_wal_size(如5GB)、checkpoint_timeout(如30分钟)减少WAL生成频率。pg_top命令查看内存占用高的进程;postgresql.conf中设置work_mem = '4MB'(根据服务器内存调整),避免单个查询占用过多内存;close()方法)。