Linux系統(tǒng)(centos7.6)安裝sql server 2017 for linux
廣告:
官方安裝說明:https://docs.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-red-hat?view=sql-server-ver15
脫機(jī)安裝:https://packages.microsoft.com
https://packages.microsoft.com/yumrepos/mssql-server-2017-rhel7/ (實(shí)驗(yàn)環(huán)境最低配置:centos 7 1核cpu 2G內(nèi)存 )
mssql-server-14.0.3238.1-19.x86_64.rpm (要下載的包)
mssql-server-fts-14.0.3238.1-19.x86_64.rpm (帶有全文索引的包)
下載包:https://packages.microsoft.com/yumrepos/mssql-server-2017-rhel7/mssql-server-14.0.3238.1-19.x86_64.rpm (2019.11.8更新)
一、用WinSCP上傳壓縮包到/usr/src/目錄下面,然后用putty軟件登錄控制臺(tái)運(yùn)行(最好在服務(wù)器控制臺(tái)輸入命令,用putty可能看不到安裝狀態(tài),一般等20分鐘左右):
cd /usr/src/ sudo yum localinstall mssql-server-14.0.3238.1-19.x86_64.rpm
刪除已安裝的rpm包:
rpm -qa | grep -i mssql (查詢)
rpm -e 文件名 (如:rpm -e mssql-server-14.0.3238.1-19.x86_64)
列出依賴項(xiàng)命令:rpm -qpR mssql-server-14.0.3238.1-19.x86_64.rpm
解決缺少的依賴項(xiàng)后,嘗試再次安裝 mssql-server 包。
安裝完成:
systemctl restart mssql-server.service
二、完成 SQL Server 安裝。 使用“mssql-conf”完成 SQL Server 安裝 :
sudo /opt/mssql/bin/mssql-conf setup
(包安裝完成后,運(yùn)行 mssql-conf setup,按照提示設(shè)置 SA 密碼并選擇版本 以下 SQL Server 2017 版本是免費(fèi)提供許可的:Evaluation、Developer 和 Express 版。)
版本選3 ,語言選 10
安裝完成信息:
選擇 SQL Server 的語言:
(1) English
(2) Deutsch
(3) Español
(4) Français
(5) Italiano
(6) 日本語
(7) 한국어
(8) Português
(9) Русский
(10) 中文 – 簡體
(11) 中文 (繁體)
輸入選項(xiàng) 1-11:10
輸入 SQL Server 系統(tǒng)管理員密碼: 大小寫字母+數(shù)字,至少8位
請(qǐng)確保為 SA 帳戶指定強(qiáng)密碼(最少 8 個(gè)字符,包括大寫和小寫字母、十進(jìn)制數(shù)字和/或非字母數(shù)字符號(hào))。
正在配置 SQL Server...
/bin/bash: /opt/mssql/bin/sqlservr:
Created symlink from /etc/systemd/system/multi-user.target.wants/mssql-server.service to /usr/l ib/systemd/system/mssql-server.service.
安裝程序已成功完成。SQL Server 正在啟動(dòng)。
常見錯(cuò)誤:
1. 內(nèi)存不夠
sqlservr: This program requires a machine with at least 2000 megabytes of memory.
/opt/mssql/bin/sqlservr: This program requires a machine with at least 2000 megabytes of memory.
安裝sql server 需要2G以上內(nèi)存:
cd /opt/mssql/bin/ # 進(jìn)入目錄 mv sqlservr sqlservr.old # 保存?zhèn)浞菸募? python # 使用python修改內(nèi)存限制代碼 oldfile = open("sqlservr.old", "rb").read() newfile = oldfile.replace("\x00\x94\x35\x77", "\x00\x80\x84\x1e") newfile = oldfile.replace("\xff\x93\x35\x77", "\x00\x80\x84\x1e").replace("\x00\x94\x35\x77", "\x00\x80\x84\x1e") open("sqlservr", "wb").write(newfile) exit()
再重新執(zhí)行:sudo /opt/mssql/bin/mssql-conf setup
(新版2017改為:\xff\x93\x35\x77)
2. 權(quán)限不夠執(zhí)行 :
直接在服務(wù)器更改文件夾權(quán)限
或者:
cd /opt/mssql/bin/
chmod 0777 sqlservr -v
chmod +x sqlservr -v
后再開啟服務(wù) sudo systemctl restart mssql-server
(sudo -u mssql /opt/mssql/bin/sqlservr -f 最低配置啟動(dòng)服務(wù)---僅為參考)
驗(yàn)證服務(wù)是否運(yùn)行:systemctl status mssql-server
檢查版本:sqlcmd -S localhost -U SA -Q 'select @@VERSION' (如果尚未安裝,請(qǐng)安裝 SQL Server 命令行工具。)
完成配置后,驗(yàn)證服務(wù)是否運(yùn)行:
systemctl status mssql-server
默認(rèn)數(shù)據(jù)庫位置: /var/opt/mssql/datacd
刪除sql server :RHEL sudo yum remove mssql-server
三、安裝命令行工具:
配置路徑變量:
export PATH=$PATH:/opt/mssql-tools/bin sudo su curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo sudo yum install mssql-tools unixODBC-devel
vi /etc/profile # 最后一行加上以下內(nèi)容: (最后插入行鍵盤輸入大寫的"G" 鍵盤輸入小寫的"o" 。保存,小寫字母英文輸入狀態(tài):esc后 按 : 號(hào),輸入 wq 保存文件并退出vi ,:w! 強(qiáng)制保存,不推出vi , :q 不保存文件,退出vi,:q! 不保存文件,強(qiáng)制退出vi)
export PATH=$PATH:/opt/mssql-tools/bin
對(duì)話框,輸入 y 或者 yes 同意安裝。完成顯示:
四、sqlcmd命令行工具本地連接到sql server,創(chuàng)建數(shù)據(jù)庫
sqlcmd -S localhost -U SA -P '12345678' /******(連接命令)******/ go CREATE DATABASE TestDB /******創(chuàng)建數(shù)據(jù)庫 (要先執(zhí)行連接命令)******/ go DROP DATABASE TestDB /******刪除數(shù)據(jù)庫: (要先執(zhí)行連接命令)******/ go SELECT Name from sys.Databases /******查詢所有數(shù)據(jù)庫 (要先執(zhí)行連接命令)******/ go exit
附加:
性能內(nèi)存最佳優(yōu)化配置:https://docs.microsoft.com/zh-cn/sql/linux/sql-server-linux-performance-best-practices?view=sql-server-2017
Linux-centos系統(tǒng)sqlserver2017賬號(hào)sa密碼重置:
1、登陸服務(wù)器,停用sqlserver服務(wù),(命令:sudo systemctl stop mssql-server)
2、切換到/opt/mssql/bin/目錄下面(命令:cd /opt/mssql/bin)
3、使用命令查看(命令./mssql-conf -h)
4、使用命令set-sa-password重置密碼(命令./mssql-conf set-sa-password)
5、輸入兩遍密碼,確認(rèn)。
6、重啟sqlserver服務(wù)(命令:sudo systemctl start mssql-server)
修改自增步長自長跳1000
修改/usr/lib/systemd/system/mssql-server.service 文件
ExecStart=/opt/mssql/bin/sqlservr -T272
systemctl daemon-reload
常見錯(cuò)誤:
1. System.Data.SqlClient.SqlException
The incoming tabular data stream (TDS) remote procedure call (RPC) protocol stream is incorrect. Parameter 13: The parameter name is invalid.
Description: HTTP 500.Error processing request.
Details: Non-web exception. Exception origin (name of application or object): Mono SqlClient Data Provider.Exception stack trace:
解決方法:
new SqlParameter("@icp", SqlDbType.VarChar,80) 改成:new SqlParameter("@icp", SqlDbType.NVarChar,80)
SQL_Latin1_General_CP1_CI_AS的排序規(guī)則中,添加中文字符需要把參數(shù)字段類型 varchar 更改為nvarchar類型。
廣告: