Sqlserver for Linux(在CentOS中安装Sqlserver2017正式版)

若要在 RHEL 上配置 SQL Server,在安装的终端运行以下命令mssql server包:

重要

如果你已经安装 CTP 或 RC 版本的 SQL Server 自 2017 年,必须注册一个 GA 存储库之前先删除旧的存储库。?有关详细信息,请参阅从预览存储库的存储库更改到 GA 存储库

  1. 下载 Microsoft SQL Server Red Hat 存储库配置文件:

 

sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo

备注

这是累积更新 (CU) 存储库。?有关你的存储库选项和它们之间的差异的详细信息,请参阅更改源存储库

  1. 运行以下命令,安装 SQL Server:
sudo yum install -y mssql-server
  1. 软件包安装完成后,运行mssql conf 安装命令并按照操作提示设置 SA 密码,并选择你的版本。
sudo /opt/mssql/bin/mssql-conf setup

提示

如果你在本教程中尝试 SQL Server 自 2017 年,自由地授予许可的以下版本: 评估、 开发人员和快速。

备注

请确保为 SA 帐户指定强密码(最少 8 个字符,包括大写和小写字母、十进制数字和/或非字母数字符号)。

  1. 配置完成后,请验证服务是否正在运行:
systemctl status mssql-server
  1. 若要允许远程连接,请在 RHEL 上打开防火墙上的 SQL Server 端口。默认的 SQL Server 端口为 TCP 1433。?如果你使用FirewallD适合您的防火墙,你可以使用以下命令:
sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload

如果上边提示firewall-cmd未知命令, 那就用下面的

iptables -A INPUT -p tcp -m multiport --dports 1433 -j ACCEPT
service iptables save;service iptables restart

此时,SQL Server 正在您 RHEL 的计算机上运行并且已准备好使用 !

安装 SQL Server 命令行工具

若要创建数据库,你需要使用一种工具,可以在 SQL Server 上运行 TRANSACT-SQL 语句进行连接。?以下是 SQL Server 命令行工具:?sqlcmdbcp

  1. 下载 Microsoft Red Hat 存储库配置文件。
sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo
  1. 如果你有以前版本的mssql 工具安装,请删除任何较旧的 unixODBC 程序包。
sudo yum remove unixODBC-utf16 unixODBC-utf16-devel
  1. 运行以下命令以安装mssql 工具与 unixODBC 开发人员包。
sudo yum install -y mssql-tools unixODBC-devel
  1. 为方便起见,添加/opt/mssql-tools/bin/到你的PATH境变量。这使您可以运行工具,而无需指定完整路径。?在登录会话和交互式/非登录会话中运行以下命令以修改PATH
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc

提示

Sqlcmd只是一个用于连接到 SQL Server 并运行查询和执行管理及开发任务的工具。?其他工具包括SQL Server Management StudioVisual Studio Code

本地连接

以下步骤使用 sqlcmd 本地连接到新的 SQL Server 实例。

  1. 使用 SQL Server 名称 (-S),用户名 (-U) 和密码 (-P) 的参数运行 sqlcmd。在本教程中,用户进行本地连接,因此服务器名称为?localhost。?用户名为?SA,密码是在安装过程中为 SA 帐户提供的密码。
sqlcmd -S localhost -U SA -P 'YourPassword'

提示

可以在命令行上省略密码,以收到密码输入提示。

提示

如果以后决定进行远程连接,请指定 -S 参数的计算机名称或 IP 地址,并确保防火墙上的端口 1433 已打开。

  1. 如果成功,应会显示 sqlcmd 命令提示符:1>。
  2. 如果连接失败,请首先尝试根据错误消息诊断问题。然后查看连接故障排除建议

创建和查询数据

下面各部分将逐步介绍如何使用 sqlcmd 新建数据库、添加数据并运行简单查询。

新建数据库

以下步骤创建一个名为?TestDB?的新数据库。

  1. 在 sqlcmd 命令提示符中,粘贴以下 Transact-SQL 命令以创建测试数据库:
CREATE DATABASE TestDB
  1. 在下一行中,编写一个查询以返回服务器上所有数据库的名称:
SELECT Name from sys.Databases
  1. 前两个命令没有立即执行。必须在新行中键入?GO?才能执行以前的命令:
GO

插入数据

接下来创建一个新表?Inventory,然后插入两个新行。

  1. 在 sqlcmd 命令提示符中,将上下文切换到新的TestDB?数据库:
USE TestDB
  1. 创建名为Inventory?的新表:
CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
  1. 将数据插入新表:
INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
  1. 要执行上述命令的类型GO:
GO

选择数据

现在,运行查询以从?Inventory?表返回数据。

  1. 通过 sqlcmd 命令提示符输入查询,以返回Inventory?表中数量大于 152 的行:
SELECT * FROM Inventory WHERE quantity = 152;
  1. 执行命令:
GO

退出 sqlcmd 命令提示符

要结束 sqlcmd 会话,请键入?QUIT:

QUIT

从 Windows 进行连接

Windows 上的 SQL Server 工具连接到 Linux 上的 SQL Server 实例,操作方式与连接到任何远程 SQL Server 实例一样。

如果有一台可以连接到 Linux 计算机的 Windows 计算机,请从运行 sqlcmd 的 Windows 命令提示符尝试执行本主题中的相同步骤。?仅验证所使用的是目标 Linux 计算机名称或 IP 地址,而非 localhost,并确保 TCP 端口 1433 已打开。?如果从 Windows 进行连接存在任何问题,请参阅连接故障排除建议

有关在 Windows 上运行,但连接到 Linux 上的 SQL Server 的其他工具,请参阅:

后续步骤

有关其他安装方案,请参阅以下资源:

升级 了解如何升级 Linux 版 SQL Server 的现有安装
卸载 在 Linux 上卸载 SQL Server
无人参与安装 了解如何编写无提示安装脚本
脱机安装 了解如何手动下载脱机安装程序包

若要了解连接和管理 SQL Server 的其他方法,请参阅?Visual Studio Code?和?SQL Server Management Studio

若要详细了解如何编写 Transact-SQL 语句和查询,请参阅教程:编写 Transact-SQL 语句

 

无需安装mono,在linux中安装jexus,运行asp.net网站

以前在linux中如果要部署.net运行环境,必须安装mono,xsp等等。非常耗时耗力且繁琐。

在年初,偶尔有一次发现宇内大神的jexus推出了独立版,无法安装mono即可完美支持asp.net webform, mvc等程序,安装过程也非常方便快捷。只需要几行命令即可,大大增加减少了小白的操作步骤。下面将命令列一下,也记录下来,方便以后安装。

1.进入usr目录,下载5.2最新版本jexus独立版

cd /usr && wget?linuxdot.net/down/jexus-5.8.2-x64.tar.gz

2.解压并删除压缩包

tar -zxvf?jexus-5.8.2-x64.tar.gz
rm -rf ./jexus-5.8.2-x64.tar.gz

3.以root身份开启jexus,这里必须用sudo,否则会导致访问网站404

sudo /usr/jexus/jws start

至此,jexus已经安装成功。是不是非常简单。。。以后asp.net网站可以直接运行在linux下, 并且sql server也推出了linux版本。

linux版sql server安装和使用教程在这里

SQLServer on Linux预览版Centos7.2安装教程

Centos7.2中安装SQLServer管理工具(mssql-tools)

Linux中的SQLServer命令-sqlcmd

jexus的基本命令如下:

启动:sudo ./jws start
重启:sudo ./jws restart
停止:sudo ./jws stop
启动某个网站: sudo start 网站名
重启某个网站:sudo restart 网站名
停止某个网站:sudo stop 网站名

 

如果在使用过程中遇到问题, 请访问Linux DotNET 中文社区获得帮助。

Linux版sqlserver修改实例默认排序规则(默认字符集)以及中文乱码解决办法

在Linux中安装sqlserver,由于并没有太多配置,很多都是默认.字符集默认为?SQL_Latin1_General_CP1_CI_AS. 这种情况下varchar会中文乱码.

解决办法是:

1.将varchar修改为nvarchar

2.修改默认排序规则(默认字符集)

在linux中修改sqlserver的默认字符集很简单.远比windows中要简单很多:

sudo systemctl stop mssql-server
sudo /opt/mssql/bin/mssql-conf set-collation

输入Chinese_PRC_CI_AS ,回车

? ?等待修改完成即可.
? ?启动数据库服务
? ?

sudo systemctl start mssql-server

Linux中的SQLServer命令-sqlcmd

此命令需要mssql-tools的支持,下面链接查看安装教程

http://www.meeleem.com/2016-11-17-44.cshtml

1.连接上你的sqlserver on linux服务器.

2.再终端中输入以下命令,注意, 下面的localhost必须用单引号,否则无法连接,官网的文档中并没有单引号,导致一直无法成功连接.如果使用IP的话,无需单引号,如果要连接远程服务器,只需要把localhost改成远程主机的域名或者ip即可.

sqlcmd -S 'localhost' -U SA -P 'YourPassword'

3.执行你的sql语句.如:

[code lang=”sql”]select name from sys.databases;
go
create database onlinux;
go

具体sql语句用法可以查看微软官方文档 :?https://msdn.microsoft.com/library/ms365303.aspx

Centos7 中安装SQLServer管理工具(mssql-tools)

刚才发布了一个Centos中安装SQLServer的步骤.现在来说一下怎么安装linux端的SQLServer管理工具.

1.切换root超级用户模式(root用户登录的话可以忽略1和3)

sudo su

2.下载配置文件

curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo

3.退出超级用户模式

exit

4.执行安装

sudo yum install mssql-tools

期间要输入两次或者三次”YES”

直至安装完成.

SQLServer on Linux预览版Centos7.2安装教程

今天凌晨 Connect 2016大会上,微软发布了预览版的SQLServer on Linux,其实从今年年初的时候就看到新闻说正在内测.当时申请了内测,但是一直没有资格.在今天终于发布,特地来写一篇安装教程.说明如何在linux中安装sql server.

安装之前,请先确认您的服务器或者VPS内存大于3.2G,否则会安装失败.并且系统版本为RedHat/CentOS?7.2 . 这是强制要求.低版本的我没有测试是否可行.也就是说,需要一台内存大于等于4G的RedHat/CentOS 7.2或者Ubuntu 16.04的服务器.达不到这样的规格请不要尝试.

下面开始安装:

1.切换root模式

sudo su

2.下载 SQLServer 针对 RedHat/CentOS系统的配置文件:

curl https://packages.microsoft.com/config/rhel/7/mssql-server.repo > /etc/yum.repos.d/mssql-server.repo

3.退出超级用户模式

exit

4.执行如下命令安装SQLServer

sudo yum install -y mssql-server

5.配置SQLServer,这里需要输入sa的密码,密码必须要符合微软的密码复杂度规则.

sudo /opt/mssql/bin/sqlservr-setup

6.当配置完成之后查看运行状态

systemctl status mssql-server

7.打开1433端口,并重启防火墙

sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload

至此,SQLServer on Linux安装完成.

至于管理工具,可以选择安装. 查看安装教程

Centos7 中安装SQLServer管理工具(mssql-tools)