Как установить MS SQL Server в Ubuntu 18.04 / Ubuntu 16.04 LTS

Как установить MS SQL Server в Ubuntu 18.04 / Ubuntu 16.04 LTS

 

MS SQL — это система реляционных баз данных от Microsoft, которая была открыта в 2016 году. В этом руководстве я расскажу вам, как установить сервер MS SQL на Ubuntu 18.04 Bionic Beaver Linux. Кроме того, мы рассмотрим, как создать базу данных, добавить пользователей и, наконец, как делать ежедневные резервные копии для баз данных.

Ниже приведены минимальные системные требования для запуска MS SQL на сервере Ubuntu 18.04 / 16.04:

  • Минимальная память 1 ГБ
  • Процессор с минимальной частотой 1,4 ГГц. Но рекомендуется> = 2 ГГц
  • SQL Server требует минимум 6 ГБ свободного места на жестком диске

Установите MS SQL Server в Ubuntu 18.04 / Ubuntu 16.04 LTS

Для установки и настройки сервера базы данных MS SQL в Ubuntu 18.04 / 16.04 выполните следующие действия:

Шаг 1: Обновите систему Ubuntu

Как обычно, мы гарантируем, что все системные пакеты обновляются перед добавлением новых пакетов:

sudo apt-get update
sudo apt-get -y upgrade

Если у вас есть обновления ядра, убедитесь, что перезагрузка выполнена для загрузки системы в новое ядро.

sudo reboot

Шаг 2: Импортируйте ключи GPG публичного репозитория:

Добавьте ключ GPG, чтобы система доверяла пакетам репозитория MS SQL:

sudo wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

Шаг 3: Добавьте Microsoft SQL Server Ubuntu репозиторий:

Добавьте хранилище apt сервера SQL в вашу систему Ubuntu 18.04 / Ubuntu 16.04.

sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list)"

Шаг 4: Установите MS SQL Server в Ubuntu 18.04 / Ubuntu 16.04 LTS

Теперь выполните следующие команды для установки SQL Server:

sudo apt-get update
sudo apt install libcurl3
sudo apt-get install -y mssql-server

Вывод похож на ниже:

Reading package lists... 0%
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  grub-pc-bin libpython-all-dev python-all python-all-dev python-asn1crypto python-cffi-backend python-crypto python-cryptography python-dbus
  python-enum34 python-gi python-idna python-ipaddress python-keyring python-keyrings.alt python-pkg-resources python-secretstorage
  python-setuptools python-six python-wheel python-xdg
Use 'apt autoremove' to remove them.
The following NEW packages will be installed:
  mssql-server
0 upgraded, 1 newly installed, 0 to remove and 15 not upgraded.
Need to get 176 MB of archives.
After this operation, 928 MB of additional disk space will be used.
Get:1 https://packages.microsoft.com/ubuntu/16.04/mssql-server-2017 xenial/main amd64 mssql-server amd64 14.0.3030.27-1 [176 MB]
Fetched 176 MB in 5s (36.3 MB/s)       
Preconfiguring packages ...
Selecting previously unselected package mssql-server.
(Reading database ... 117280 files and directories currently installed.)
Preparing to unpack .../mssql-server_14.0.3030.27-1_amd64.deb ...
Unpacking mssql-server (14.0.3030.27-1) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...
Setting up mssql-server (14.0.3030.27-1) ...

+--------------------------------------------------------------+
Please run 'sudo /opt/mssql/bin/mssql-conf setup'
to complete the setup of Microsoft SQL Server
+--------------------------------------------------------------+

SQL Server needs to be restarted in order to apply this setting. Please run
'systemctl restart mssql-server.service'.
Processing triggers for man-db (2.8.3-2) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...

Если вы столкнулись с ошибкой « mssql-server: Зависит: openssl (<= 1.1.0), но 1.1.0g-2ubuntu4.1 должен быть установлен ». Понизьте версию openssl, установленную в вашей системе, и переустановите сервер mssql..

$ wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/openssl_1.0.2g-1ubuntu4_amd64.deb
$ sudo dpkg -i openssl_1.0.2g-1ubuntu4_amd64.deb
$ apt-get -y install mssql-server

После завершения установки перейдите к установке пароля пользователя root, запустив начальную настройку  /opt/mssql/bin/mssql-conf setup

$ sudo /opt/mssql/bin/mssql-conf setup
Choose an edition of SQL Server:
  1) Evaluation (free, no production use rights, 180-day limit)
  2) Developer (free, no production use rights)
  3) Express (free)
  4) Web (PAID)
  5) Standard (PAID)
  6) Enterprise (PAID)
  7) Enterprise Core (PAID)
  8) I bought a license through a retail sales channel and have a product key to enter.

Details about editions can be found at
https://go.microsoft.com/fwlink/?LinkId=852748&clcid=0x409

Use of PAID editions of this software requires separate licensing through a
Microsoft Volume Licensing program.
By choosing a PAID edition, you are verifying that you have the appropriate
number of licenses in place to install and run this software.

Enter your edition(1-8): 2
The license terms for this product can be found in
/usr/share/doc/mssql-server or downloaded from:
https://go.microsoft.com/fwlink/?LinkId=855862&clcid=0x409

The privacy statement can be viewed at:
https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x409

Do you accept the license terms? [Yes/No]:Yes

Enter the SQL Server system administrator password:  <SetNewPassword>
Confirm the SQL Server system administrator password: <ConfirmPassword>
Configuring SQL Server...

ForceFlush is enabled for this instance. 
ForceFlush feature is enabled for log durability.
Created symlink /etc/systemd/system/multi-user.target.wants/mssql-server.service → /lib/systemd/system/mssql-server.service.
Setup has completed successfully. SQL Server is now starting.

Служба MS SQL должна быть запущена.

$ systemctl status mssql-server.service 
● mssql-server.service - Microsoft SQL Server Database Engine
   Loaded: loaded (/lib/systemd/system/mssql-server.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2019-09-18 14:39:34 UTC; 21s ago
     Docs: https://docs.microsoft.com/en-us/sql/linux
 Main PID: 3501 (sqlservr)
    Tasks: 108
   CGroup: /system.slice/mssql-server.service
           ├─3501 /opt/mssql/bin/sqlservr
           └─3541 /opt/mssql/bin/sqlservr

Sep 18 14:39:37 ubuntu18 sqlservr[3501]: [155B blob data]
Sep 18 14:39:37 ubuntu18 sqlservr[3501]: [62B blob data]
Sep 18 14:39:37 ubuntu18 sqlservr[3501]: [61B blob data]
Sep 18 14:39:38 ubuntu18 sqlservr[3501]: [389B blob data]
Sep 18 14:39:38 ubuntu18 sqlservr[3501]: [66B blob data]
Sep 18 14:39:38 ubuntu18 sqlservr[3501]: [75B blob data]
Sep 18 14:39:38 ubuntu18 sqlservr[3501]: [96B blob data]
Sep 18 14:39:38 ubuntu18 sqlservr[3501]: [100B blob data]
Sep 18 14:39:38 ubuntu18 sqlservr[3501]: [71B blob data]
Sep 18 14:39:38 ubuntu18 sqlservr[3501]: [124B blob data]

Шаг 5: Установите инструменты MS SQL и плагин unixODBC

Запустите команды:

curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get -y install mssql-tools
sudo apt-get install unixodbc-dev

Добавьте /opt/mssql-tools/bin/ в  переменную  окружения PATH в оболочке bash. Чтобы сделать  sqlcmd / bcp  доступным из оболочки bash для сеансов входа в систему, измените свой  PATH  в   файле ~ / .bash_profile с помощью следующей команды:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile

Чтобы сделать  sqlcmd / bcp  доступным из оболочки bash для интерактивных сеансов / сеансов без входа в систему, измените  PATH в   файле ~ / .bashrc с помощью следующей команды:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc

Подключитесь к консоли MS SQL:

# sqlcmd -S 127.0.0.1 -U SA 
Password: 
1> create database testDB;

Получить список базы данных:

1> select name from sys.databases;
2> go
name                                                                                                                            
--------------------------------------------------------------------------------------------------------------------------------
master                                                                                                                          
tempdb                                                                                                                          
model                                                                                                                           
msdb                                                                                                                            
testDB                                                                                                                          

(5 rows affected)

 

Author: forgero

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *