SQL Server on Ubuntu
本文从零开始一步一步介绍如何在Ubuntu上搭建SQL Server 2017,包括安装系统、安装SQL等相关步骤和方法(仅供测试学习之用,基础篇)。
一. 创建Ubuntu系统(Create Ubuntu System)
1. 前提准备
由于本文主要研究SQL Server 2017在Linux上的搭建方法,从Install SQL Server on Linux中得知当前SQL Server 2017 CTP 2.0对于Ubuntu系统支持16.04和16.10,同时可以直接下载16.04版本,因此选择Ubuntu 16.04进行安装。
由于习惯在VMware ESXi Server上搭建虚拟机,通过VMware Compatibility Guide查到,ESXi 5.5以上版本就支持Ubuntu 16.04了,因此选择ESXi 6.0安装Ubuntu 16.04。
2. 创建虚拟机
和正常在VMware上安装虚拟机一样,创建一个空的虚拟机安装Ubuntu 16.04。注意事项如下:
- 如果要使用SQL Server,内存至少3.25GB以上;
- 如果要使用SQL Server,文件系统必须是XFS或者EXT4,其它如BTRFS是不支持的。
参考:https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup。
3. 安装Ubuntu 16.04
官方安装指南:http://partnerweb.vmware.com/GOSIG/Ubuntu_16_04_LTS.html。
具体步骤和截图如下:
a) 编辑虚拟机设置(Edit Settings…),添加Ubuntu安装ISO文件到CD/DVD驱动上,勾选Connect at power on,确定后开机。
b) 切换到Console窗口,则出现如下界面:
c) 先设置网络,以便直接安装更新等:
d) 选择安装更新和相关驱动:
e) 选择安装类型,没有特殊需求的话默认即可:
f) 设置时区:
g) 设置键盘,这里可能窗口过大,用鼠标来回拖动选择Continue即可:
h) 设置用户:
i) 等待安装即可:
j) 安装完成后需要点击Restart Now:
k) 断开CD/DVD驱动ISO文件后点击Enter:
l) 稍微等待一段时间后输入密码就可以进去系统啦:
4. 优化Ubuntu系统操作
a) 安装Open VM Tools以便于更方便地使用Ubuntu
根据VMware官方安装文档的推荐,这里安装Open VM Tools以强化使用Ubuntu(有时候刚装完Ubuntu,系统分辨率无法调节,安装完open-vm-tools-desktop即可解决):
sudo apt install open-vm-tools
sudo apt install open-vm-tools-desktop
b) 如何从Windows远程操作Ubuntu系统
由于主机工作环境是Windows,所以可能会经常从Windows远程操作Ubuntu系统。
目前我发现两种比较方便的从Windows远程操作连接Ubuntu系统的方法。一是利用Xshell工具(免费SSH客户端),二是使用VNC Client。
- 利用Xshell SSH客户端
由于默认Ubuntu没有安装SSH Server,使用如下命令安装SSH服务器,即可正常使用Xshell工具通过SSH连接操作Ubuntu,同时可以直接使用sz和rz命令进行Windows和Linux系统文件之间的传输。
sudo apt-get update
sudo apt-get install openssh-server
sudo apt-get install lrzsz
利用rz和sz下载和上传文件:
- 使用VNC服务器客户端,这样在Windows上就可以使用VNC Client进行远程连接操作,类似Windows中的远程桌面连接。在Ubuntu上设置VNC Server的步骤如下:
Ubuntu桌面自动有一个工具叫Desktop Sharing:
启动工具后,可以根据自己的需求设置相关选项,设置完关闭即可:
如果使用VNC Client连接过程中遇到这个错误”Server did not offer supported security type”,或者下图错误:
则需要禁用加密:先安装dconf Editor(sudo apt install dconf-editor),然后启动dconf Editor -> org -> gnome -> desktop -> remote-access,取消选择require-encryption。
设置完关闭即可正常通过VNC Viewer去连接了(如果出现错误连不上,则请查看两端网络连通性和防火墙相关设置)。
c) vi编辑器上下左右变ABCD的问题解决
依次执行以下命令安装VIM:
sudo apt-get remove vim-common
sudo apt-get install vim
二. 安装SQL Server(Install SQL Server)
1. 安装SQL Server
官网安装指南:https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-ubuntu。
安装步骤如下:
a) 安装curl软件包:
sudo apt install curl
b) 导入repository GPG键和SQL Server Ubuntu的安装库:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server.list | sudo tee /etc/apt/sources.list.d/mssql-server.list
c) 安装SQL Server:
sudo apt-get update
sudo apt-get install -y mssql-server
d) 初始化SQL Server配置:
sudo /opt/mssql/bin/mssql-conf setup
e) 确认SQL Server服务的状态:
systemctl status mssql-server
f) 设置防火墙开启SQL Server服务端口:
sudo ufw allow 1433/tcp
sudo ufw reload
Note:默认情况下Ubuntu防火墙是关闭状态,ufw status可以查看。
另外如果有其它防火墙工具,比如firewalld工具包,则需要执行以下命令设置防火墙开启SQL Server服务端口:
firewall-cmd --zone=public --add-port=1433/tcp --permanent
firewall-cmd --reload
最后就可以用Windows中的SQL Server Management Studio去连接访问数据库了。
默认认证方式是SQL Server认证,默认管理员用户是sa,密码是在d)步骤设置的密码。从上图看到数据库默认路径是/var/opt/mssql/data/,此为Linux路径。
2. 安装SQL Server Tools
官方安装文档见:https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools#ubuntu。
具体步骤如下:
a) 导入微软公共GPG键和注册微软Ubuntu安装库:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
b) 更新软件源并安装SQL Server工具包:
sudo apt-get update
sudo apt-get install mssql-tools unixodbc-dev
c) 为了以后方便使用sqlcmd,把安装目录添加到bash shell环境变量中:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
Note:环境变量是用户级别的,如果在root下执行上述命令,则只有root用户可以直接使用sqlcmd,建议在root下执行一次再exit后执行一次。
d) 安装完成后就可以使用sqlcmd tool了。
关于sqlcmd的使用可以参考:https://docs.microsoft.com/en-us/sql/tools/sqlcmd-utility。
[原创文章,转载请注明出处,仅供学习研究之用,如有错误请留言,谢谢支持]
[原站点:http://www.cnblogs.com/lavender000/p/6869757.html,来自永远薰薰]
SQL Server on Ubuntu的更多相关文章
- Ubuntu上配置SQL Server Always On Availability Group(Configure Always On Availability Group for SQL Server on Ubuntu)
下面简单介绍一下如何在Ubuntu上一步一步创建一个SQL Server AG(Always On Availability Group),以及配置过程中遇到的坑的填充方法. 目前在Linux上可以搭 ...
- Configure Always On Availability Group for SQL Server on Ubuntu——Ubuntu上配置SQL Server Always On Availability Group
下面简单介绍一下如何在Ubuntu上一步一步创建一个SQL Server AG(Always On Availability Group),以及配置过程中遇到的坑的填充方法. 目前在Linux上可以搭 ...
- Configure Always On Availability Group for SQL Server on Ubuntu
下面简单介绍一下如何在Ubuntu上一步一步创建一个SQL Server AG(Always On Availability Group),以及配置过程中遇到的坑的填充方法. 目前在Linux上可以搭 ...
- SQL Server on Ubuntu——Ubuntu上的SQL Server(全截图)
本文从零开始一步一步介绍如何在Ubuntu上搭建SQL Server 2017,包括安装系统.安装SQL等相关步骤和方法(仅供测试学习之用,基础篇). 一. 创建Ubuntu系统(Create U ...
- Configure Always On Availability Group for SQL Server on RHEL——Red Hat Enterprise Linux上配置SQL Server Always On Availability Group
下面简单介绍一下如何在Red Hat Enterprise Linux上一步一步创建一个SQL Server AG(Always On Availability Group),以及配置过程中遇到的坑的 ...
- Linux 上的 SQL Server 2017 的安装指南
一:介绍背景 微软在2016年 3 月首次对外宣布了 Linux 版的 SQL Server,并于2017年 7 月发布了首个公开 RC 版.前几日在美国奥兰多召开的微软 Ignite 2017 大会 ...
- 安装SQL Server For Linux(Install SQL Server)
SQL Server on Ubuntu——Ubuntu上的SQL Server(全截图) 1. 安装SQL Server 官网安装指南:https://docs.microsoft.com ...
- Ubuntu 下安装 SQL Server 2016初探
安装步骤参官方 https://docs.microsoft.com/zh-cn/sql/linux/sql-server-linux-setup-ubuntu 执行命令如下: .Enter supe ...
- Ubuntu、Sql Server卸载心得
这几天真是搞得亏大了! 首先是卸载Ubuntu,直接在Windows下格式化那个盘了,这就出岔子了……然后越来越糟糕,最后弄得一个系统都没有了……然后重装系统…… 然后装VS和Sql Server,因 ...
随机推荐
- {ubuntu}不能挂载windows
sudo apt-get install ntfs-3g sudo ntfsfix /dev/sda?
- freebsd安装snmp
pkg_add http://ip地址/pub/FreeBSD/ports/packages/Latest/net-snmp.tbzFetching http://ip地址/pub/FreeBSD/p ...
- java代码(生成long类型数字)
package test; public class GenerateNum { public static void main(String[] args) { //定义为long类型,需在数值后面 ...
- Django之CSRF问题
1.csrf全称:cross site request forgery(跨站请求伪造),举例来讲,一个安全的网站A,一个恶意网站B,当你在A网站进行了登录后,这时候浏览器会保存你的cookie和ses ...
- C语言指针系列 - 一级指针.一维数组,二级指针,二维数组,指针数组,数组指针,函数指针,指针函数
1. 数组名 C语言中的数组名是一个特殊的存在, 从本质上来讲, 数组名是一个地址, 我们可以打印一个指针的值,和打印一个数组的值来观察出这个本质: int nArray[10] ={ 0 }; in ...
- Entity Framework插入数据报错:Validation failed for one or more entities
www.111cn.net 编辑:lanve 来源:转载 今天在处理Entity Framework插入数据库时,报错: Validation failed for one or more entit ...
- WPF知识点全攻略09- 附加属性
附加属性也是一种特殊的依赖属性. Canvas中的Canvas.Left,Canvas.Top ,DockPanel中DockPanel.Dock等就是附加属性. 更加.NET类属性的写法经验.这个中 ...
- 一个典型的flex布局,兼容性比较好
html 代码: <body class="flex-wrap col-flex"> <header class="midCenter flex-wra ...
- 系统学习爬虫_2_urllib
什么是urllib urlopen urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cad ...
- QR 分解
将学习到什么 介绍了平面旋转矩阵,Householder 矩阵和 QR 分解以入相关性质. 预备知识 平面旋转与 Householder 矩阵是特殊的酉矩阵,它们在建立某些基本的矩阵分解过程中起着 ...