SlideShare a Scribd company logo
1 of 30
SQL Server
2017 on Linux
Benjamin Leroux
Data Platform Solution Architect @ Microsoft
Robert Luong
Technical Solution Professional @ Microsoft
2017-09-08 SQL Server on Linux 2
2017-09-08 SQL Server on Linux 3
SQL Server on Linux: How? Introduction
A must read...
2017-09-08 SQL Server on Linux 4
Let's Get Started!
2017-09-08 SQL Server on Linux 5
Install Linux
Install Linux on a physical machine or a virtual machine (VM)
• VirtualBox
• VMware Workstation Player
• Parallel Desktop
• Hyper-V
Or create and use a pre-configured Linux VM in Azure. There is also a
VM image with SQL Server vNext CTP2.0 already installed, see Create a
Linux SQL Server 2017 virtual machine with the Azure portal
2017-09-08 SQL Server on Linux 6
Install SQL Server
Supported platforms (installation guide)
• Red Hat Enterprise Linux 7.3 Workstation, Server, and Desktop
• SUSE Linux Enterprise Server v12 SP2
• Ubuntu 16.04LTS and 16.10
• Docker Engine 1.8+ on Windows, Mac, or Linux
2017-09-08 SQL Server on Linux 7
Optional Packages
• Red Hat Enterprise Linux
• Ubuntu
• SUSE Enterprise Linux
• macOS
• Docker
Install SQL Server tools
sqlcmd: Command-line query utility
bcp: Bulk import-export utility
2017-09-08 SQL Server on Linux 8
Optional Packages
2017-09-08 SQL Server on Linux 9
Install SQL Server Agent
Run scheduled SQL Server jobs
• Red Hat Enterprise Linux
• Ubuntu
• SUSE Enterprise Linux
Optional Packages
2017-09-08 SQL Server on Linux 10
Install SQL Server Full-Text Search
full-text queries against character-based data
• Red Hat Enterprise Linux
• Ubuntu
• SUSE Enterprise Linux
Optional Packages
2017-09-08 SQL Server on Linux 11
Install SQL Server Integration Services
Run SSIS jobs using DTexec
• Red Hat Enterprise Linux
• Ubuntu
Connect and query
2017-09-08 SQL Server on Linux 13
How-to's
• Sqlcmd [tutorial]
• Visual Studio Code (VS Code) [tutorial]
• SQL Server Management Studio (SSMS) [tutorial]
• SQL Server Data Tools (SSDT) [tutorial]
• PowerShell [tutorial]
Develop
9/8/2017 SQL Server on Linux 14
Use SQL Server Management Studio
• Install the newest version of SQL
Server Management Studio
Connect using sqlcmd on Linux
2017-09-08 SQL Server on Linux 15
# On your Linux box, open a command terminal
# Run sqlcmd with parameters for your SQL Server name (-S), the user name (-U), and the password (-P)
# The following command connects to the local SQL Server instance (localhost) on Linux
sqlcmd -S localhost -U SA -P '<YourPassword>’
# Connect to a remote instance, specify the machine name or IP address for the -S parameter
sqlcmd -S 192.222.2.222 -U SA -P '<YourPassword>'
Query SQL Server
2017-09-08 SQL Server on Linux 16
--Returns the name of all of the databases
SELECT Name from sys.Databases;
GO
--Create a database using the SQL Server default settings
CREATE DATABASE Sandbox;
GO
--Use the database
USE Sandbox;
GO
--Create a table in the current database
CREATE TABLE product (id INT, name NVARCHAR(50), quantity INT);
GO
--Insert some data
INSERT INTO product VALUES (1, 'Bottle', 250);
INSERT INTO product VALUES (2, 'Hat', 95);
INSERT INTO product VALUES (3, 'Shirt', 128);
GO
--Select from the table
SELECT * FROM product WHERE quantity > 100;
--End your sqlcmd session, type QUIT
QUIT
Demo
2017-09-08 SQL Server on Linux 17
SQL and Containers
9/8/2017 SQL Server on Linux 18
• Runs on Docker for Windows and
Linux
• Simply pull the “microsoft/mssql-
server-linux” image
• Need to accept the EULA!!!
• Port mapping is important
• Docker run example:
docker run
• -e "ACCEPT_EULA=Y"
• -e "MSSQL_SA_PASSWORD=<password>"
• -e "MSSQL_PID=<edition or product key>
• -p <port mapping>
• --name <dns name>
• -v <local path>:<Docker linux path>
• -d
• <Image name> Run the SQL Server 2017 container image with Docker
Demo
2017-09-08 SQL Server on Linux 19
SQL and Containers example
• sudo docker pull microsoft/mssql-server-linux
• sudo docker pull microsoft/mssql-server-linux:latest
• docker run -e "ACCEPT_EULA=Y" -e
"MSSQL_SA_PASSWORD=!Sqllinux1234" -e
"MSSQL_PID=Developer" --cap-add SYS_PTRACE -p 1501:1433 -
-name sqllinux01 -v C:Datadockersqllinux01:/Documents -d
microsoft/mssql-server-linux
• docker exec -it sqllinux01 /bin/bash
Develop
2017-09-08 SQL Server on Linux 21
Visual Studio Code
• Download and install VS Code on your machine
• Install the mssql extension
1. Press CTRL+SHIFT+P (or F1) to open the Command Palette in VS Code (for
macOS the Command key is equivalent to the CTRL key on Linux and
Windows)
2. Select Install Extension and type mssql
3. Click install mssql
Develop
SQL Server on Linux 22
• Use SQL Server Data Tools
• Install Visual Studio and SQL Server Data Tools*
Manage
2017-09-08 SQL Server on Linux 23
• Configure SQL Server on Linux with mssql-conf
• Use SSMS to Manage SQL Server on Linux
• Use PowerShell to Manage SQL Server on Linux
• Create and run jobs
• Use log shipping
Migrate
2017-09-08 SQL Server on Linux 24
• Migrate from SQL Server on Windows
 Restore a SQL Server database from Windows to Linux
 Export and import a database with sqlpackage
 Export and import a database with SSMS
• Migrate from other database servers
 Use SSMA to migrate databases to SQL Server on Linux
• Migrate structured data
 Bulk copy data with bcp
 Extract , transform, and load data for SQL Server on Linux with SSIS
Business continuity
2017-09-08 SQL Server on Linux 25
Support high-availability and disaster recovery
• Availability Groups
• Database backup and restore
• Failover Cluster Instance
Security
2017-09-08 SQL Server on Linux 26
SQL Server on Linux currently has the following limitations:
• SQL Server authentication is available.
• Windows authentication is also supported. Yes Windows!!!
• A standard password policy is provided. MUST_CHANGE is the only option
you may configure.
• Extensible Key Management is not supported.
• Using keys stored in the Azure Key Vault is not supported.
• SQL Server generates its own self-signed certificate for encrypting
connections. Currently, SQL Server cannot be configured to use a user
provided certificate for SSL or TLS.
Get started with security features of SQL Server on Linux
Optimize Performance
2017-09-08 SQL Server on Linux 27
Not unique or specific to Linux, but worth exploring:
(Works in SQL Server on Linux!)
• Create a Columnstore Index
• Use In-Memory OLTP
• Use Query Store
• Query Dynamic Management Views
Summary
2017-09-08 SQL Server on Linux 28
SQL Server on Linux offers a broader range of choice for all
organizations, not just those who want to run SQL on
Windows. It enables SQL Server to run in more private, public,
and hybrid cloud ecosystems, to be used by developers
regardless of programming languages, frameworks or tools.
Resources
2017-09-08 SQL Server on Linux 29
• SQL Server on Linux Documentation
• SQL Server on Linux - Channel 9 (videos)
• SQL Server on Linux - TechNet Virtual Labs
• Developer Getting Started Tutorials
• SQL Server Samples Repository (GitHub)
• SQL developer tools
• Docker Hub - SQL Server on Linux for Docker Engine
SQL Server 2017 what’s new
2017-09-08 SQL Server on Linux 30
• Database Engine
• Graph DB
• Adaptive Query Processing
• Automatic tuning
• Support linux
• Scale out read
• SSIS
• Scale out
• Support linux
• SSAS
• New Get Data (Power Query) data sources
• DAX editor
• New Detail Rows end-user action to show details for aggregated info
• SSRS
• Collaboration: Comments are now available for reports including attachment
• ML
• Support Python
That's all Folks!
Thank you...
2017-09-08 SQL Server on Linux 31

More Related Content

What's hot

[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture
[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture
[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architectureOpenStack Korea Community
 
SUSE Expert Days Paris 2018 – SLE 15
SUSE Expert Days Paris 2018 – SLE 15SUSE Expert Days Paris 2018 – SLE 15
SUSE Expert Days Paris 2018 – SLE 15SUSE
 
Hostvn ceph in production v1.1 dungtq
Hostvn   ceph in production v1.1 dungtqHostvn   ceph in production v1.1 dungtq
Hostvn ceph in production v1.1 dungtqViet Stack
 
Build cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack AnsibleBuild cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack AnsibleJirayut Nimsaeng
 
Installing WordPress on AWS
Installing WordPress on AWSInstalling WordPress on AWS
Installing WordPress on AWSManish Jain
 
Websockets: Pushing the web forward
Websockets: Pushing the web forwardWebsockets: Pushing the web forward
Websockets: Pushing the web forwardMark Roden
 
Microsoft Azure 新功能導覽 @ Build 2014
Microsoft Azure 新功能導覽 @ Build 2014Microsoft Azure 新功能導覽 @ Build 2014
Microsoft Azure 新功能導覽 @ Build 2014Jeff Chu
 
WinOps 2017 - Docker on Windows - from 101 to Production
WinOps 2017 - Docker on Windows - from 101 to ProductionWinOps 2017 - Docker on Windows - from 101 to Production
WinOps 2017 - Docker on Windows - from 101 to ProductionElton Stoneman
 
OpenStack and Windows - What's new in Ocata
OpenStack and Windows - What's new in OcataOpenStack and Windows - What's new in Ocata
OpenStack and Windows - What's new in OcataAlessandro Pilotti
 
Learning Oracle with Oracle VM VirtualBox
Learning Oracle with Oracle VM VirtualBoxLearning Oracle with Oracle VM VirtualBox
Learning Oracle with Oracle VM VirtualBoxLeighton Nelson
 
DockerCon EU 2015: The Latest in Docker Engine
DockerCon EU 2015: The Latest in Docker EngineDockerCon EU 2015: The Latest in Docker Engine
DockerCon EU 2015: The Latest in Docker EngineDocker, Inc.
 
Openstack in 10 mins
Openstack in 10 minsOpenstack in 10 mins
Openstack in 10 minsDawood M.S
 
Integration with Docker and .NET Core
Integration with Docker and .NET CoreIntegration with Docker and .NET Core
Integration with Docker and .NET CoreSriram Hariharan
 
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and WindowsOpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and WindowseNovance
 
Vancouver open stack meetup presentation
Vancouver open stack meetup presentationVancouver open stack meetup presentation
Vancouver open stack meetup presentationSean Winn
 
vSphere Integrated Containers 101 and End-User Workflow
vSphere Integrated Containers 101 and End-User WorkflowvSphere Integrated Containers 101 and End-User Workflow
vSphere Integrated Containers 101 and End-User WorkflowSimone Morellato
 
Docker 1.9 Workshop
Docker 1.9 WorkshopDocker 1.9 Workshop
Docker 1.9 Workshop{code}
 
Docker Security and Content Trust
Docker Security and Content TrustDocker Security and Content Trust
Docker Security and Content Trustehazlett
 
Docker Container Security - A Network View
Docker Container Security - A Network ViewDocker Container Security - A Network View
Docker Container Security - A Network ViewNeuVector
 

What's hot (20)

[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture
[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture
[OpenInfra Days Korea 2018] Day 2 - E4 - 딥다이브: immutable Kubernetes architecture
 
SUSE Expert Days Paris 2018 – SLE 15
SUSE Expert Days Paris 2018 – SLE 15SUSE Expert Days Paris 2018 – SLE 15
SUSE Expert Days Paris 2018 – SLE 15
 
Hostvn ceph in production v1.1 dungtq
Hostvn   ceph in production v1.1 dungtqHostvn   ceph in production v1.1 dungtq
Hostvn ceph in production v1.1 dungtq
 
Build cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack AnsibleBuild cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack Ansible
 
Installing WordPress on AWS
Installing WordPress on AWSInstalling WordPress on AWS
Installing WordPress on AWS
 
Websockets: Pushing the web forward
Websockets: Pushing the web forwardWebsockets: Pushing the web forward
Websockets: Pushing the web forward
 
Microsoft Azure 新功能導覽 @ Build 2014
Microsoft Azure 新功能導覽 @ Build 2014Microsoft Azure 新功能導覽 @ Build 2014
Microsoft Azure 新功能導覽 @ Build 2014
 
WinOps 2017 - Docker on Windows - from 101 to Production
WinOps 2017 - Docker on Windows - from 101 to ProductionWinOps 2017 - Docker on Windows - from 101 to Production
WinOps 2017 - Docker on Windows - from 101 to Production
 
OpenStack and Windows - What's new in Ocata
OpenStack and Windows - What's new in OcataOpenStack and Windows - What's new in Ocata
OpenStack and Windows - What's new in Ocata
 
Learning Oracle with Oracle VM VirtualBox
Learning Oracle with Oracle VM VirtualBoxLearning Oracle with Oracle VM VirtualBox
Learning Oracle with Oracle VM VirtualBox
 
DockerCon EU 2015: The Latest in Docker Engine
DockerCon EU 2015: The Latest in Docker EngineDockerCon EU 2015: The Latest in Docker Engine
DockerCon EU 2015: The Latest in Docker Engine
 
Queens release updates
Queens release updatesQueens release updates
Queens release updates
 
Openstack in 10 mins
Openstack in 10 minsOpenstack in 10 mins
Openstack in 10 mins
 
Integration with Docker and .NET Core
Integration with Docker and .NET CoreIntegration with Docker and .NET Core
Integration with Docker and .NET Core
 
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and WindowsOpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows
OpenStack in action 4! Alessandro Pilotti - OpenStack, Hyper-V and Windows
 
Vancouver open stack meetup presentation
Vancouver open stack meetup presentationVancouver open stack meetup presentation
Vancouver open stack meetup presentation
 
vSphere Integrated Containers 101 and End-User Workflow
vSphere Integrated Containers 101 and End-User WorkflowvSphere Integrated Containers 101 and End-User Workflow
vSphere Integrated Containers 101 and End-User Workflow
 
Docker 1.9 Workshop
Docker 1.9 WorkshopDocker 1.9 Workshop
Docker 1.9 Workshop
 
Docker Security and Content Trust
Docker Security and Content TrustDocker Security and Content Trust
Docker Security and Content Trust
 
Docker Container Security - A Network View
Docker Container Security - A Network ViewDocker Container Security - A Network View
Docker Container Security - A Network View
 

Similar to DataDrivenMtl 20170906 - SQL Server 2017 on Linux

Tech-Spark: SQL Server on Linux
Tech-Spark: SQL Server on LinuxTech-Spark: SQL Server on Linux
Tech-Spark: SQL Server on LinuxRalph Attard
 
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!Hi! Ho! Hi! Ho! SQL Server on Linux We Go!
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!SolarWinds
 
AWS Webcast - Highly Available SQL Server on AWS
AWS Webcast - Highly Available SQL Server on AWS  AWS Webcast - Highly Available SQL Server on AWS
AWS Webcast - Highly Available SQL Server on AWS Amazon Web Services
 
AWS Webcast - Implementing Windows and SQL Server with High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server with High Availability on AWSAWS Webcast - Implementing Windows and SQL Server with High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server with High Availability on AWSAmazon Web Services
 
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWSAWS Webcast - Implementing Windows and SQL Server for High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWSAmazon Web Services
 
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaContinuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaDr. John Tunnicliffe
 
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaContinuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaDr. John Tunnicliffe
 
Percona Live 2022 - MySQL Shell for Visual Studio Code
Percona Live 2022 - MySQL Shell for Visual Studio CodePercona Live 2022 - MySQL Shell for Visual Studio Code
Percona Live 2022 - MySQL Shell for Visual Studio CodeFrederic Descamps
 
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWS AWS Webcast - Implementing Windows and SQL Server for High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWS Amazon Web Services
 
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!Hi! Ho! Hi! Ho! SQL Server on Linux We Go!
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!SolarWinds
 
PowerShellForDBDevelopers
PowerShellForDBDevelopersPowerShellForDBDevelopers
PowerShellForDBDevelopersBryan Cafferky
 
Deploying Windows Apps to Kubernetes with Draft and Helm
Deploying Windows Apps to Kubernetes with Draft and HelmDeploying Windows Apps to Kubernetes with Draft and Helm
Deploying Windows Apps to Kubernetes with Draft and HelmJessica Deen
 
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...Amazon Web Services
 
Deploying applications to Windows Server 2016 and Windows Containers
Deploying applications to Windows Server 2016 and Windows ContainersDeploying applications to Windows Server 2016 and Windows Containers
Deploying applications to Windows Server 2016 and Windows ContainersBen Hall
 
Geek Sync I Working with SQL Server for Linux Cross-Platform
Geek Sync I Working with SQL Server for Linux Cross-PlatformGeek Sync I Working with SQL Server for Linux Cross-Platform
Geek Sync I Working with SQL Server for Linux Cross-PlatformIDERA Software
 
MySQL Shell - The Best MySQL DBA Tool
MySQL Shell - The Best MySQL DBA ToolMySQL Shell - The Best MySQL DBA Tool
MySQL Shell - The Best MySQL DBA ToolMiguel Araújo
 
Modernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudModernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudMicrosoft Tech Community
 

Similar to DataDrivenMtl 20170906 - SQL Server 2017 on Linux (20)

Tech-Spark: SQL Server on Linux
Tech-Spark: SQL Server on LinuxTech-Spark: SQL Server on Linux
Tech-Spark: SQL Server on Linux
 
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!Hi! Ho! Hi! Ho! SQL Server on Linux We Go!
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!
 
AWS Webcast - Highly Available SQL Server on AWS
AWS Webcast - Highly Available SQL Server on AWS  AWS Webcast - Highly Available SQL Server on AWS
AWS Webcast - Highly Available SQL Server on AWS
 
AWS Webcast - Implementing Windows and SQL Server with High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server with High Availability on AWSAWS Webcast - Implementing Windows and SQL Server with High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server with High Availability on AWS
 
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWSAWS Webcast - Implementing Windows and SQL Server for High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWS
 
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaContinuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
 
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaContinuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
 
Percona Live 2022 - MySQL Shell for Visual Studio Code
Percona Live 2022 - MySQL Shell for Visual Studio CodePercona Live 2022 - MySQL Shell for Visual Studio Code
Percona Live 2022 - MySQL Shell for Visual Studio Code
 
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWS AWS Webcast - Implementing Windows and SQL Server for High Availability on AWS
AWS Webcast - Implementing Windows and SQL Server for High Availability on AWS
 
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!Hi! Ho! Hi! Ho! SQL Server on Linux We Go!
Hi! Ho! Hi! Ho! SQL Server on Linux We Go!
 
PowerShellForDBDevelopers
PowerShellForDBDevelopersPowerShellForDBDevelopers
PowerShellForDBDevelopers
 
Linux Experience for Herman
Linux Experience for HermanLinux Experience for Herman
Linux Experience for Herman
 
Deploying Windows Apps to Kubernetes with Draft and Helm
Deploying Windows Apps to Kubernetes with Draft and HelmDeploying Windows Apps to Kubernetes with Draft and Helm
Deploying Windows Apps to Kubernetes with Draft and Helm
 
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
AWS re:Invent 2016: Deploying and Managing .NET Pipelines and Microsoft Workl...
 
MySQL on Docker and Kubernetes
MySQL on Docker and KubernetesMySQL on Docker and Kubernetes
MySQL on Docker and Kubernetes
 
Deploying applications to Windows Server 2016 and Windows Containers
Deploying applications to Windows Server 2016 and Windows ContainersDeploying applications to Windows Server 2016 and Windows Containers
Deploying applications to Windows Server 2016 and Windows Containers
 
Geek Sync I Working with SQL Server for Linux Cross-Platform
Geek Sync I Working with SQL Server for Linux Cross-PlatformGeek Sync I Working with SQL Server for Linux Cross-Platform
Geek Sync I Working with SQL Server for Linux Cross-Platform
 
MySQL Shell - The Best MySQL DBA Tool
MySQL Shell - The Best MySQL DBA ToolMySQL Shell - The Best MySQL DBA Tool
MySQL Shell - The Best MySQL DBA Tool
 
Modernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudModernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloud
 
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
 

Recently uploaded

Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 

Recently uploaded (20)

Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 

DataDrivenMtl 20170906 - SQL Server 2017 on Linux

  • 1. SQL Server 2017 on Linux Benjamin Leroux Data Platform Solution Architect @ Microsoft Robert Luong Technical Solution Professional @ Microsoft
  • 4. SQL Server on Linux: How? Introduction A must read... 2017-09-08 SQL Server on Linux 4
  • 5. Let's Get Started! 2017-09-08 SQL Server on Linux 5
  • 6. Install Linux Install Linux on a physical machine or a virtual machine (VM) • VirtualBox • VMware Workstation Player • Parallel Desktop • Hyper-V Or create and use a pre-configured Linux VM in Azure. There is also a VM image with SQL Server vNext CTP2.0 already installed, see Create a Linux SQL Server 2017 virtual machine with the Azure portal 2017-09-08 SQL Server on Linux 6
  • 7. Install SQL Server Supported platforms (installation guide) • Red Hat Enterprise Linux 7.3 Workstation, Server, and Desktop • SUSE Linux Enterprise Server v12 SP2 • Ubuntu 16.04LTS and 16.10 • Docker Engine 1.8+ on Windows, Mac, or Linux 2017-09-08 SQL Server on Linux 7
  • 8. Optional Packages • Red Hat Enterprise Linux • Ubuntu • SUSE Enterprise Linux • macOS • Docker Install SQL Server tools sqlcmd: Command-line query utility bcp: Bulk import-export utility 2017-09-08 SQL Server on Linux 8
  • 9. Optional Packages 2017-09-08 SQL Server on Linux 9 Install SQL Server Agent Run scheduled SQL Server jobs • Red Hat Enterprise Linux • Ubuntu • SUSE Enterprise Linux
  • 10. Optional Packages 2017-09-08 SQL Server on Linux 10 Install SQL Server Full-Text Search full-text queries against character-based data • Red Hat Enterprise Linux • Ubuntu • SUSE Enterprise Linux
  • 11. Optional Packages 2017-09-08 SQL Server on Linux 11 Install SQL Server Integration Services Run SSIS jobs using DTexec • Red Hat Enterprise Linux • Ubuntu
  • 12. Connect and query 2017-09-08 SQL Server on Linux 13 How-to's • Sqlcmd [tutorial] • Visual Studio Code (VS Code) [tutorial] • SQL Server Management Studio (SSMS) [tutorial] • SQL Server Data Tools (SSDT) [tutorial] • PowerShell [tutorial]
  • 13. Develop 9/8/2017 SQL Server on Linux 14 Use SQL Server Management Studio • Install the newest version of SQL Server Management Studio
  • 14. Connect using sqlcmd on Linux 2017-09-08 SQL Server on Linux 15 # On your Linux box, open a command terminal # Run sqlcmd with parameters for your SQL Server name (-S), the user name (-U), and the password (-P) # The following command connects to the local SQL Server instance (localhost) on Linux sqlcmd -S localhost -U SA -P '<YourPassword>’ # Connect to a remote instance, specify the machine name or IP address for the -S parameter sqlcmd -S 192.222.2.222 -U SA -P '<YourPassword>'
  • 15. Query SQL Server 2017-09-08 SQL Server on Linux 16 --Returns the name of all of the databases SELECT Name from sys.Databases; GO --Create a database using the SQL Server default settings CREATE DATABASE Sandbox; GO --Use the database USE Sandbox; GO --Create a table in the current database CREATE TABLE product (id INT, name NVARCHAR(50), quantity INT); GO --Insert some data INSERT INTO product VALUES (1, 'Bottle', 250); INSERT INTO product VALUES (2, 'Hat', 95); INSERT INTO product VALUES (3, 'Shirt', 128); GO --Select from the table SELECT * FROM product WHERE quantity > 100; --End your sqlcmd session, type QUIT QUIT
  • 17. SQL and Containers 9/8/2017 SQL Server on Linux 18 • Runs on Docker for Windows and Linux • Simply pull the “microsoft/mssql- server-linux” image • Need to accept the EULA!!! • Port mapping is important • Docker run example: docker run • -e "ACCEPT_EULA=Y" • -e "MSSQL_SA_PASSWORD=<password>" • -e "MSSQL_PID=<edition or product key> • -p <port mapping> • --name <dns name> • -v <local path>:<Docker linux path> • -d • <Image name> Run the SQL Server 2017 container image with Docker
  • 19. SQL and Containers example • sudo docker pull microsoft/mssql-server-linux • sudo docker pull microsoft/mssql-server-linux:latest • docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=!Sqllinux1234" -e "MSSQL_PID=Developer" --cap-add SYS_PTRACE -p 1501:1433 - -name sqllinux01 -v C:Datadockersqllinux01:/Documents -d microsoft/mssql-server-linux • docker exec -it sqllinux01 /bin/bash
  • 20. Develop 2017-09-08 SQL Server on Linux 21 Visual Studio Code • Download and install VS Code on your machine • Install the mssql extension 1. Press CTRL+SHIFT+P (or F1) to open the Command Palette in VS Code (for macOS the Command key is equivalent to the CTRL key on Linux and Windows) 2. Select Install Extension and type mssql 3. Click install mssql
  • 21. Develop SQL Server on Linux 22 • Use SQL Server Data Tools • Install Visual Studio and SQL Server Data Tools*
  • 22. Manage 2017-09-08 SQL Server on Linux 23 • Configure SQL Server on Linux with mssql-conf • Use SSMS to Manage SQL Server on Linux • Use PowerShell to Manage SQL Server on Linux • Create and run jobs • Use log shipping
  • 23. Migrate 2017-09-08 SQL Server on Linux 24 • Migrate from SQL Server on Windows  Restore a SQL Server database from Windows to Linux  Export and import a database with sqlpackage  Export and import a database with SSMS • Migrate from other database servers  Use SSMA to migrate databases to SQL Server on Linux • Migrate structured data  Bulk copy data with bcp  Extract , transform, and load data for SQL Server on Linux with SSIS
  • 24. Business continuity 2017-09-08 SQL Server on Linux 25 Support high-availability and disaster recovery • Availability Groups • Database backup and restore • Failover Cluster Instance
  • 25. Security 2017-09-08 SQL Server on Linux 26 SQL Server on Linux currently has the following limitations: • SQL Server authentication is available. • Windows authentication is also supported. Yes Windows!!! • A standard password policy is provided. MUST_CHANGE is the only option you may configure. • Extensible Key Management is not supported. • Using keys stored in the Azure Key Vault is not supported. • SQL Server generates its own self-signed certificate for encrypting connections. Currently, SQL Server cannot be configured to use a user provided certificate for SSL or TLS. Get started with security features of SQL Server on Linux
  • 26. Optimize Performance 2017-09-08 SQL Server on Linux 27 Not unique or specific to Linux, but worth exploring: (Works in SQL Server on Linux!) • Create a Columnstore Index • Use In-Memory OLTP • Use Query Store • Query Dynamic Management Views
  • 27. Summary 2017-09-08 SQL Server on Linux 28 SQL Server on Linux offers a broader range of choice for all organizations, not just those who want to run SQL on Windows. It enables SQL Server to run in more private, public, and hybrid cloud ecosystems, to be used by developers regardless of programming languages, frameworks or tools.
  • 28. Resources 2017-09-08 SQL Server on Linux 29 • SQL Server on Linux Documentation • SQL Server on Linux - Channel 9 (videos) • SQL Server on Linux - TechNet Virtual Labs • Developer Getting Started Tutorials • SQL Server Samples Repository (GitHub) • SQL developer tools • Docker Hub - SQL Server on Linux for Docker Engine
  • 29. SQL Server 2017 what’s new 2017-09-08 SQL Server on Linux 30 • Database Engine • Graph DB • Adaptive Query Processing • Automatic tuning • Support linux • Scale out read • SSIS • Scale out • Support linux • SSAS • New Get Data (Power Query) data sources • DAX editor • New Detail Rows end-user action to show details for aggregated info • SSRS • Collaboration: Comments are now available for reports including attachment • ML • Support Python
  • 30. That's all Folks! Thank you... 2017-09-08 SQL Server on Linux 31

Editor's Notes

  1. https://www.youtube.com/watch?v=5ycx9hFGHog
  2. 1- Provision linux VM (2min) 2- install SQL Server (15min) – Montrer seulement les commandes 3- install SQLcmd + BCP (5min) 4- Query with sqlcmd (5min) 5- Query with SSMS (5min) 6- Backup/restore (10min)
  3. 1- Provision linux VM (2min) 2- install SQL Server (15min) – Montrer seulement les commandes 3- install SQLcmd + BCP (5min) 4- Query with sqlcmd (5min) 5- Query with SSMS (5min) 6- Backup/restore (10min)