热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:配置SQLServeronLinux

篇首语:本文由编程笔记#小编为大家整理,主要介绍了配置SQLServeronLinux相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了配置SQL Server on Linux相关的知识,希望对你有一定的参考价值。




1. 前言

前一篇配置SQL Server on Linux(1),地址:http://www.cnblogs.com/fishparadise/p/8125203.html ,是关于更改数据库排序规则的。实现的原理跟在Windows平台差不多,都是需要备份用户数据库,重建系统数据库来实现的,不过操作过程简化了。下面的配置是一些常规的设置,比如最大内存,默认数据文件位置,等。

 


2. 环境

Linux: CentOS 7.4,SQL Server 2017 (RC2) - 14.0.900.75 (X64)

 


3. 更改设置

3.1 内存限制

使用mssql-conf工具


/opt/mssql/bin/mssql-conf set memory.memorylimitmb 3500

 

重启数据库实例


systemctl restart mssql-server

 

 


疑问

以上方法是官方的步骤,但使用SSMS去查看实例的内存设置,发现最大内存限制还是没有改变。不知道为什么。使用sys.sp_configure去配置最大内存则生效了。

 


EXEC sys.sp_configure N\'show advanced options\', N\'1\' RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N\'max server memory (MB)\', N\'3500\'
GO
RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N\'show advanced options\', N\'0\' RECONFIGURE WITH OVERRIDE
GO

 

 


3.2 设置默认数据或日志目录位置

创建自定义目录及更改目录权限


[root@134test ~]# mkdir -p /data/mssql_data/
[root@134test ~]# chown -R mssql:mssql /data/mssql_data/

 

使用mssql-conf工具


[root@134test ~]# /opt/mssql/bin/mssql-conf set filelocation.defaultdatadir /data/mssql_data/
SQL Server needs
to be restarted in order to apply this setting. Please run
\'systemctl restart mssql-server.service\'.

 

重启数据库实例生效


systemctl restart mssql-server

 

测试(数据和日志文件都在这个目录下)


4> create database db2;
5> go

 


[root@134test ~]# cd /data/mssql_data/
[root@134test /data/mssql_data]# ll db*
-rw-rw---- 1 mssql mssql 3932160 2017-12-27 12:31 db1_log.ldf
-rw-rw---- 1 mssql mssql 12582912 2017-12-27 12:31 db1.mdf
-rw-rw---- 1 mssql mssql 8388608 2017-12-27 12:37 db2_log.ldf
-rw-rw---- 1 mssql mssql 8388608 2017-12-27 12:33 db2.mdf

 

如果需要单独更改日志的目录(如/tmp)


/opt/mssql/bin/mssql-conf set filelocation.defaultlogdir /tmp/

 

 


3.3 更改 TCP 端口

使用mssql-conf工具


/opt/mssql/bin/mssql-conf set network.tcpport <new_tcp_port>

 

重启实例生效


[root@134test ~]# systemctl restart mssql-server

 

测试


[root@134test ~# /opt/mssql/bin/mssql-conf set network.tcpport 1444
SQL Server needs to be restarted in order to apply this setting. Please run
\'systemctl restart mssql-server.service\'.
[root@134test ~
]# systemctl restart mssql-server

 


[root@134test ~]# sqlcmd -S localhost -U sa
Password:
Sqlcmd: Error: Microsoft ODBC Driver
13 for SQL Server : Login timeout expired.
Sqlcmd: Error: Microsoft ODBC Driver
13 for SQL Server : TCP Provider: Error code 0x2749.
Sqlcmd: Error: Microsoft ODBC Driver
13 for SQL Server : A network-related or instance-specific error has occurred
while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct
and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online..

 


[root@134test ~]# sqlcmd -S localhost,1444 -U sa
Password:
1>

 

 


3.4 删除设置

使用mssql-conf工具的unset命令


/opt/mssql/bin/mssql-conf unset network.tcpport
/opt/mssql/bin/mssql-conf unset memory.memorylimitmb
……

 

重启实例生效


[root@134test ~]# systemctl restart mssql-server

 

 


3.5 查看当前设置及配置文件


cat /var/opt/mssql/mssql.conf

 

以下是官方提供的一个示例配置。可根据实际需要直接修改/var/opt/mssql/mssql.conf,最后重启数据库实例生效。未在此文件中显示的所有设置均使用其默认值。


[EULA]
accepteula
= Y
[coredump]
captureminiandfull
= true
coredumptype
= full
[filelocation]
defaultbackupdir
= /var/opt/mssql/data/
defaultdatadir
= /var/opt/mssql/data/
defaultdumpdir
= /var/opt/mssql/data/
defaultlogdir
= /var/opt/mssql/data/
[hadr]
hadrenabled
= 0
[language]
lcid
= 1033
[memory]
memorylimitmb
= 4096
[network]
forceencryption
= 0
ipaddress
= 10.192.0.0
kerberoskeytabfile
= /var/opt/mssql/secrets/mssql.keytab
tcpport
= 1401
tlscert
= /etc/ssl/certs/mssql.pem
tlsciphers
= ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
tlskey
= /etc/ssl/private/mssql.key
tlsprotocols
= 1.2,1.1,1.0
[sqlagent]
databasemailprofile
= default
errorlogfile
= /var/opt/mssql/log/sqlagentlog.log
errorlogginglevel
= 7
[telemetry]
customerfeedback
= true
userrequestedlocalauditdirectory
= /tmp/audit
[traceflag]
traceflag0
= 1204
traceflag1
= 2345
traceflag
= 3456

 

 


4. 参考

更多的配置,请参考微软的官方文档:https://docs.microsoft.com/zh-cn/sql/linux/sql-server-linux-configure-mssql-conf

 

 

 

 



推荐阅读
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 根据最新发布的《互联网人才趋势报告》,尽管大量IT从业者已转向Python开发,但随着人工智能和大数据领域的迅猛发展,仍存在巨大的人才缺口。本文将详细介绍如何使用Python编写一个简单的爬虫程序,并提供完整的代码示例。 ... [详细]
  • MySQL索引详解与优化
    本文深入探讨了MySQL中的索引机制,包括索引的基本概念、优势与劣势、分类及其实现原理,并详细介绍了索引的使用场景和优化技巧。通过具体示例,帮助读者更好地理解和应用索引以提升数据库性能。 ... [详细]
  • 解决网站乱码问题的综合指南
    本文总结了导致网站乱码的常见原因,并提供了详细的解决方案,包括文件编码、HTML元标签设置、服务器响应头配置、数据库字符集调整以及PHP与MySQL交互时的编码处理。 ... [详细]
  • 微软Exchange服务器遭遇2022年版“千年虫”漏洞
    微软Exchange服务器在新年伊始遭遇了一个类似于‘千年虫’的日期处理漏洞,导致邮件传输受阻。该问题主要影响配置了FIP-FS恶意软件引擎的Exchange 2016和2019版本。 ... [详细]
  • 作者:守望者1028链接:https:www.nowcoder.comdiscuss55353来源:牛客网面试高频题:校招过程中参考过牛客诸位大佬的面经,但是具体哪一块是参考谁的我 ... [详细]
  • 本文详细探讨了JDBC(Java数据库连接)的内部机制,重点分析其作为服务提供者接口(SPI)框架的应用。通过类图和代码示例,展示了JDBC如何注册驱动程序、建立数据库连接以及执行SQL查询的过程。 ... [详细]
  • 本文介绍如何在现有网络中部署基于Linux系统的透明防火墙(网桥模式),以实现灵活的时间段控制、流量限制等功能。通过详细的步骤和配置说明,确保内部网络的安全性和稳定性。 ... [详细]
  • 本文详细介绍了Python编程语言的学习路径,涵盖基础语法、常用组件、开发工具、数据库管理、Web服务开发、大数据分析、人工智能、爬虫开发及办公自动化等多个方向。通过系统化的学习计划,帮助初学者快速掌握Python的核心技能。 ... [详细]
  • PostgreSQL 10 离线安装指南
    本文详细介绍了如何在无法联网的服务器上进行 PostgreSQL 10 的离线安装,并涵盖了从下载安装包到配置远程访问的完整步骤。 ... [详细]
  • 优化局域网SSH连接延迟问题的解决方案
    本文介绍了解决局域网内SSH连接到服务器时出现长时间等待问题的方法。通过调整配置和优化网络设置,可以显著缩短SSH连接的时间。 ... [详细]
  • 深入理解Shell脚本编程
    本文详细介绍了Shell脚本编程的基础概念、语法结构及其在操作系统中的应用。通过具体的示例代码,帮助读者掌握如何编写和执行Shell脚本。 ... [详细]
author-avatar
詹姵慧3482
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有