Jeśli potrzebujesz dostępu do bazy danych z Raspberry Pi, możesz użyć bazy dostępnej dla tej platformy (na przykład MySQL / MariaDB, PostgreSQL i MongoDB) lub uzyskać do niej zdalny dostęp. Sterowniki Easysoft ODBC umożliwiają aplikacjom Pi łączenie się z lokalnymi i zdalnymi bazami danych. Na przykład możesz użyć sterownika ODBC programu SQL Server, aby połączyć język Python na Pi z programem SQL Server w systemie Windows (lub w chmurze Azure lub w systemie Linux, jeśli używasz tych platform). Kroki w tym celu są następujące:
- Pobierz sterownik ODBC SQL Server dla Raspberry Pi. (Wymagana rejestracja.)
- Zainstaluj i uzyskaj licencję na sterownik ODBC programu SQL Server na komputerze Raspberry Pi.
Instrukcje dotyczące instalacji można znaleźć w dokumentacji sterownika ODBC.
Uwaga Musisz mieć zainstalowany na swoim komputerze menedżer sterowników unixODBC. Dystrybucja Easysoft zawiera wersję menedżera sterowników unixODBC, z którą przetestowano sterownik ODBC Easysoft SQL Server. Program instalacyjny sterownika Easysoft daje możliwość zainstalowania unixODBC.
- Utwórz źródło danych ODBC w /etc/odbc.ini, które łączy się z bazą danych SQL Server, do której chcesz uzyskać dostęp z Pythona. Na przykład:
[SQLSERVER_SAMPLE] Driver = Easysoft ODBC-SQL Server Server = my_machine\SQLEXPRESS User = my_domain\my_user Password = my_password # If the database you want to connect to is the default # for the SQL Server login, omit this attribute Database = Northwind
- Użyj isql, aby przetestować nowe źródło danych. Na przykład:
cd /usr/local/easysoft/unixODBC/bin ./isql.sh -v SQLSERVER_SAMPLE
W wierszu polecenia wpisz „pomoc”, aby wyświetlić listę tabel. Aby wyjść, naciśnij return w pustym wierszu zachęty.
Jeśli nie możesz się połączyć, zapoznaj się z tym artykułem i Bazą wiedzy na temat sterowników ODBC SQL Server, aby uzyskać pomoc.
- Teraz zainstaluj pyodbc, interfejs ODBC, który umożliwia dostęp do bazy danych ODBC z Pythona:
sudo apt-get install python-pyodbc
- Aby przetestować instalację, pobierz niektóre dane SQL Server z powłoki Pythona:
pi@raspberrypi:~ $ python Python 2.7.13 (default, Jan 19 2017, 14:48:08) [GCC 6.3.0 20170124] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import pyodbc >>> cnxn = pyodbc.connect("DSN=SQLSERVER_SAMPLE") >>> cursor = cnxn.cursor() >>> cursor.tables() <pyodbc.Cursor object at 0x76a168a8> >>> rows = cursor.fetchall() >>> for row in rows: ... print row.table_name ... sysmatrixageforget GEMS_DEPENDENTS_STAGING2 GEMS_DEPENDENTS_STAGING2 MSreplication_options oinsert spt_fallback_db spt_fallback_dev spt_fallback_usg spt_monitor >>>
Alternatywnie, jeśli wolisz Perl:
pi@raspberrypi:~ $ sudo apt-get install libdbi-perl pi@raspberrypi:~ $ wget http://search.cpan.org/CPAN/authors/id/M/MJ/MJEVANS/DBD-ODBC-1.56.tar.gz pi@raspberrypi:~ $ tar -xvf DBD-ODBC-1.56.tar.gz pi@raspberrypi:~ $ cd DBD-ODBC-1.56 pi@raspberrypi:~ $ export DBI_DSN='dbi:ODBC:SQLSERVER_SAMPLE' pi@raspberrypi:~ $ DBI_USER='mydb_user' pi@raspberrypi:~ $ DBI_PASS='mydb_password' pi@raspberrypi:~ $ perl Makefile.PL pi@raspberrypi:~ $ make pi@raspberrypi:~ $ make test pi@raspberrypi:~ $ sudo make install pi@raspberrypi:~ $ vi perl-test.pl #!/usr/bin/perl -w use strict; use DBI; my $dbh = DBI->connect( "dbi:ODBC:SQLSERVER_SAMPLE", "mydb_user", "mydb_password" , { RaiseError => 1 } ); my $sth = $dbh->table_info(); while ( my ( $qualifier, $owner, $name, $type, $remarks ) = $sth->fetchrow_array() ) { foreach ($qualifier, $owner, $name, $type, $remarks) { $_ = '' unless defined $_; } print "$qualifier, $owner, $name, $type, $remarks \n"; } exit; pi@raspberrypi:~ $ perl ./perl-test.pl master, dbo, sysmatrixageforget, SYSTEM TABLE, master, dbo, GEMS_DEPENDENTS_STAGING2, TABLE, master, dbo, DBD_ODBC_LOB_TEST, TABLE,
Easysoft obsługuje obecnie platformę ARMv71 Raspberry Pi, która jest 32-bitowa. Jeśli potrzebujesz jednego z naszych sterowników ODBC dla 64-bitowego Raspberry PI (w chwili pisania tego tekstu oznacza to Raspberry Pi 3 Model B z systemem SUSE Linux), daj nam znać, kontaktując się z naszym zespołem pomocy technicznej, a my spróbujemy zbudować 64-bitowy sterownik dla Ciebie. Przykładową korzyścią płynącą z uruchamiania naszych sterowników na 64-bitowej platformie Raspberry Pi jest wzrost wydajności, jaki ta architektura zapewnia podczas korzystania z szyfrowania. (64-bitowe liczby całkowite umożliwiają procesorom obsługę zadań szyfrowania przy użyciu mniejszej liczby poleceń). Sterownik ODBC SQL Server umożliwia szyfrowanie połączenia sieciowego między Raspberry Pi a SQL Server, chroniąc przesyłane dane.
Obecnie sterowniki Easysoft umożliwiają dostęp do następujących magazynów danych z Raspberry Pi:
- Serwer SQL
- Wyrocznia
- Sprzedaż
- Dostęp
- DB2
- MySQL
- Apache Derby
- Dowolny sterownik ODBC