Linux a MS SQL server

11. prosince 2018

Microsoft SQL Server je relační databázový SQL server. Je je běžnou volbou tam kde se používají technologie Microsoftu. Technologie Microsoftu však běží typicky jen zase na produktech Microsoftu a tradičně byly vždy uzavřené.

Co však dělat pokud se chce na MS SQL server připojit z Linuxu?
Což může nastat když:

  • je potřeba se z aplikace připojit k MS SQL server
  • potřebujete prozkoumat data v databázi
  • je potřeba přejít z databáze MS SQL na jinou multiplatformní databázi

Od jisté doby už MS SQL server běží i na Linuxu https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup?view=sql-server-2017

PHP a MS SQL - FreeTDS

Jednou z možností jak se připojit z PHP skriptu na MSSQL server je zprovoznit FreeTDS a skrze něj se připojovat k MS SQL serveru. Je tedy potřeba zprovoznit FreeTDS a MSSQL pro PHP.

FreeTDS

FreeTDS je sada knihoven pro Linux a další Unixy. Tyto knihovny umožňují programům nativně komunikovat s Microsoft SQL Server a Sybase.

Konfigurační soubor k FreeTDS je v /etc/freetds.conf.
Jeho obsah může vypadat například takto:

[servermssql]

host = 192.168.1.1
port = 7594
tds version = 7.0
client charset = UTF-8

PHP a MSSQL

Následně je potřeba nainstalovat balíček php-mssql.
Zde je ukázkový PHP skript:

$link = mssql_pconnect('server'mssql, $mssql_user, $mssql_pass, true);
if (!$link || !mssql_select_db($mssql_db , $link)) {
    die('Unable to connect or select database!');
}
echo "connect established:\n";

// Do a simple query, select the version of 
// MSSQL and print it.
$version = mssql_query('SELECT @@VERSION');
$row = mssql_fetch_array($version);

echo $row[0];
echo "---\n";
// Clean up
mssql_free_result($version);

 

GUI pro MS SQL

Pro grafické zobrazení dat z databáze MS SQL jsem si vybral dva programy, které jsou lehce na-instalovatelné, protože jsou k dispozici v balíčku:

Dbeaver ke stažení a SQL Electron ke stažení.

SQL Electron

esqlelectron

Program SQL Electron je velmi lehce použitelný, ale jednodušší

Dbeaver

dbeaver

Přednost jsem dal programu Dbeaver, zpřístupňuje mnoho možností a ukazuje i podrobnosti z databáze. Například ukazuje i struktura tabulek pomocí DDL.

Články na podobné téma

Jak porovnat dvě stejné databáze?
REST API: API platform
Vlastní web a mail hosting se softwarem ISP Config
Programovní v SQL: PostgreSQL, MySQL/MariaDB
HTTPS: zabezpečený web
NoSQL databáze Mongo DB
Linux a MS SQL server
Co je pracovní náplň programátora
Lokalizace aplikací v jazyce Python
Jaký mail a web hosting vybrat
How to make wireless low power Arduino
Digispark - Programujte mikrokontrolér Atmel ATtiny pomocí Arduino IDE
Program Roulette
Vývoj pro procesory ARM s Arduino IDE
Wireless low power Arduino
Pyradio - Python program for receive Internet radio with text user inteface
UPS monitor pro Android
Bezdrátový bateriově napájený WiFi teploměr
Jak programovat WiFi procesor ESP8266
Comparison IQRF vs Wireless Arduino
Jakou platformu zvolit pro eshop? Například Prestashop
Development kits and gateways for wireless platform IQRF

OpenStreetMap a GPS trasy v mapě na webu
Java program pro přehledné monitorování záložních zdrojů
Quickplay
Otevřený chytrý telefon s Linuxem - Openmoko Neo FreeRunner
Čipové kontaktní a bezkontaktní karty Java Card OpenPlatform
Grafický program pro embeded/mobilní zařízení na vyhledávání dopravního spoje.
Vývoj pro bezdrátové moduly s procesorem PIC pod GNU/Linux - IQRF
Java program a applet Kalkulačka
Java program na výpočet kvadratické rovnice
O programování a ruzné programy v jazyce Java, Python a dalších