Python: Deine Projekte mit MariaDB-Datenbanken koppeln
Mit Python und MariaDB verbindest du deine Anwendungen effizient mit einer Datenbank und verarbeitest Informationen im Handumdrehen. Diese Kombination ist das ideale Fundament für Web-Apps, Datenanalysen und automatisierte Berichte.
Was sind die Voraussetzungen?
Bevor du deine Python-Programme mit MariaDB verknüpfst, sollten folgende Punkte geklärt sein:
- Python-Installation: Python muss auf deinem System einsatzbereit sein. Nutze am besten eine aktuelle, unterstützte Version.
- MariaDB-Datenbank: Du benötigst eine aktive MariaDB-Instanz – egal ob lokal installiert oder als Remote-Datenbank.
- Zugangsdaten: Halte Hostname, Port, Datenbankname sowie Benutzername und Passwort bereit.
- Python-Modul: Das passende Connector-Modul für MariaDB muss installiert sein.
Vorbereitung und Installation
Für deinen MariaDB-Server hast du zwei Möglichkeiten: Entweder du installierst ihn direkt auf deiner Hardware oder du nutzt eine flexible Cloud-Lösung.
Variante 1: MariaDB-Server lokal installieren
Das MariaDB-Paket lässt sich unkompliziert einrichten. So gehst du vor:
Schritt 1: System prüfen
Checke kurz, ob deine Hardware die Mindestanforderungen (Speicherplatz und RAM) für MariaDB erfüllt.
Schritt 2: Download starten
Hol dir das passende Paket für dein Betriebssystem (Windows, Linux oder macOS) direkt von der offiziellen MariaDB-Website.
Schritt 3: Installation
Führe die Installation passend zu deiner Systemarchitektur aus. Wenn du zum Beispiel MariaDB unter Ubuntu 20.04 installierst, nutzt du den Befehl sudo apt install mariadb-server.
Schritt 4: Konfiguration
Lege nach der Installation die Zugangsdaten, Sicherheitsregeln und weitere Datenbankparameter fest.
Schritt 5: Dienst starten
Aktiviere den MariaDB-Dienst. Unter Windows erledigst du das im Dienstmanager, bei Linux oder macOS nutzt du sudo systemctl start mariadb oder sudo service mariadb start im Terminal.
Schritt 6: Sicherheitseinstellungen
Sichere deine Installation mit dem Befehl mysql_secure_installation ab. So setzt du Passwörter und entfernst unsichere Testzugänge.
Schritt 7: Verbindungstest
Prüfe den Zugriff, indem du dich mit mysql -u root -p als Root anmeldest. Ein paar einfache SQL-Abfragen zeigen dir, ob alles glatt läuft.
Variante 2: MariaDB SkySQL nutzen
MariaDB SkySQL ist eine Cloud-Datenbankplattform, mit der du deine Datenbanken ohne großen Wartungsaufwand betreibst. Du profitierst von automatischer Skalierung, Hochverfügbarkeit und Top-Sicherheit.
Schritt 1: Account erstellen
Registriere dich auf der MariaDB SkySQL-Website und logge dich in dein Dashboard ein.
Schritt 2: Dienst anlegen
Klicke auf „Neuen Dienst erstellen“. Hier wählst du deinen gewünschten Typ aus, etwa den MariaDB Enterprise Server.
Schritt 3: Ressourcen planen
Wähle die passende Version, Kapazität und Performance-Parameter aus. Hier legst du auch die Benutzerrechte und Sicherheitsregeln für den Zugriff fest.
Schritt 4: Datenbank verbinden
Sobald der Dienst bereit ist, erhältst du alle Verbindungsdaten (Host, Port, User). Teste den Zugriff direkt mit einer ersten Abfrage.
Schritt 5: Monitoring
Nutze die integrierten Analyse-Tools, um die Performance im Auge zu behalten und deine Ressourcen bei Bedarf flexibel anzupassen.
Verbindung mit dem MariaDB-Server
Mit der MariaDB-Bibliothek für Python steuerst du deine Datenbank direkt aus deinem Code heraus. Installiere sie einfach über den Paketmanager pip:
pip3 install mariadbshellDanach bist du bereit für den ersten Connect.
Schritt 1: Verbindung aufbauen
Importiere die Bibliothek und stelle die Verbindung mit deinen Zugangsdaten her.
import mariadb
# Database connection details
db_config = {
'user': 'your_username',
'password': 'your_password',
'host': 'your_hostname',
'database': 'your_database',
'port': 3306 # Standard port for MariaDB
}
# Establishing the connection
conn = mariadb.connect(**db_config)
# Create a cursor to execute queries
cursor = conn.cursor()pythonDer Cursor ist dein Werkzeug, um SQL-Befehle auszuführen und Daten zu manipulieren. Du erzeugst ihn nach dem Verbindungsaufbau einfach über die Methode cursor().
Schritt 2: Daten abrufen
Nutze den Cursor, um Abfragen zu senden und die Ergebnisse zu verarbeiten.
# Define the SQL query
sql_query = "SELECT * FROM your_table"
# Execute the query
cursor.execute(sql_query)
# Fetch results
results = cursor.fetchall()
# Display data
for row in results:
print(row)pythonSchritt 3: Daten einfügen
Für neue Datensätze definierst du eine INSERT-Abfrage und führst diese aus.
# Define the SQL insert query
insert_query = "INSERT INTO your_table (column1, column2) VALUES (%s, %s)"
# Values to insert
values = ('value1', 'value2')
# Execute the insert query
cursor.execute(insert_query, values)
# Commit the transaction
conn.commit()pythonDabei gibst du die Tabelle (your_table) und die Spalten (column1, column2) an. Platzhalter wie %s sorgen für Sicherheit. Mit conn.commit() bestätigst du die Transaktion, damit die Daten dauerhaft gespeichert werden.
Schritt 4: Ressourcen freigeben
Schließe den Cursor und die Verbindung, wenn du fertig bist, um dein System sauber zu halten.
# Close cursor and connection
cursor.close()
conn.close()pythonSchritt 5: Fehlerbehandlung
Baue ein Error-Handling ein, damit dein Programm bei Verbindungsproblemen oder Abfragefehlern nicht einfach abstürzt.
try:
# Establish the connection
conn = mariadb.connect(**db_config)
# Create a cursor
cursor = conn.cursor()
# Execute the query
cursor.execute(sql_query)
# Fetch results
results = cursor.fetchall()
for row in results:
print(row)
except mariadb.Error as err:
print(f"Error: {err}")
finally:
# Close cursor and connection
if cursor:
cursor.close()
if conn:
conn.close()pythonDieses Grundgerüst kannst du nun ganz nach deinen Wünschen erweitern.
Hier siehst du den kompletten Code im Überblick:
import mariadb
# Database connection details
db_config = {
'user': 'your_username',
'password': 'your_password',
'host': 'your_hostname',
'database': 'your_database',
'port': 3306 # Standard port for MariaDB
}
try:
# Establishing the connection
conn = mariadb.connect(**db_config)
# Create a cursor to execute queries
cursor = conn.cursor()
# Define the SQL query
sql_query = "SELECT * FROM your_table"
# Execute the query
cursor.execute(sql_query)
# Fetch results
results = cursor.fetchall()
# Display data
for row in results:
print(row)
# Define the SQL insert query
insert_query = "INSERT INTO your_table (column1, column2) VALUES (%s, %s)"
# Values to insert
values = ('value1', 'value2')
# Execute the insert query
cursor.execute(insert_query, values)
# Commit the transaction
conn.commit()
except mariadb.Error as err:
print(f"Error: {err}")
finally:
# Close cursor and connection
if cursor:
cursor.close()
if conn:
conn.close()python