U kunt Python en MariaDB gebruiken om een database efficiënt te koppelen aan ap­pli­ca­ties en in­for­ma­tie te verwerken. De com­bi­na­tie van Python en MariaDB is met name geschikt voor webapps, data-analyse en het au­to­ma­ti­se­ren van rap­por­ta­ges.

Wat zijn de voor­waar­den?

Je moet aan de volgende vereisten voldoen om Python-programma’s met MariaDB te verbinden:

  • Python-in­stal­la­ties: Python moet op uw systeem zijn ge­ïn­stal­leerd. Zorg ervoor dat u een versie gebruikt die door MariaDB wordt on­der­steund.
  • MariaDB-database: U moet be­schik­ken over een func­ti­o­ne­le MariaDB-database. U kunt een lokale MariaDB-in­stal­la­tie gebruiken of een ver­bin­ding maken met een externe database.
  • Toe­gangs­ge­ge­vens voor de database: u hebt in­for­ma­tie nodig zoals de hostnaam, poort, da­ta­ba­se­naam, ge­brui­kers­naam en wacht­woord om ver­bin­ding te maken met de MariaDB-database.
  • Python-module: De Python/Connector-module voor ver­bin­ding met MariaDB moet zijn ge­ïn­stal­leerd.

Hoe MariaDB met Python voor te bereiden en te in­stal­le­ren

Er zijn twee opties om toegang te krijgen tot een MariaDB-server. U kunt een MariaDB-server op uw eigen computer of server in­stal­le­ren of het MariaDB-platform in de cloud gebruiken.

Optie 1: MariaDB op hardware in­stal­le­ren

Het down­lo­a­den en in­stal­le­ren van het MariaDB-pakket op uw eigen hardware is vrij eenvoudig. Hier volgt een staps­ge­wij­ze hand­lei­ding:

Stap 1: Con­tro­leer de sys­teem­ver­eis­ten

Con­tro­leer de vereisten voor het in­stal­le­ren van MariaDB op uw systeem. Zorg ervoor dat uw hardware voldoet aan de mi­ni­mum­ver­eis­ten, zoals voldoende schijf­ruim­te en geheugen.

Stap 2: Download MariaDB

Ga naar de officiële website van MariaDB en selecteer de download voor uw be­stu­rings­sys­teem (Windows, Linux of macOS). Zorg ervoor dat u de juiste versie voor uw systeem kiest.

Stap 3: Pakket in­stal­le­ren

Download het pakket voor uw be­stu­rings­sys­teem en ar­chi­tec­tuur (32 bit of 64 bit). Nadat het down­lo­a­den is voltooid, voert u de in­stal­la­tie uit. De in­stal­la­tie start op ver­schil­len­de be­stu­rings­sys­te­men op ver­schil­len­de manieren. Om bij­voor­beeld MariaDB op Ubuntu 20.04 te in­stal­le­ren, voert u de opdracht sudo apt install mariadb-server in.

Stap 4: Con­fi­gu­reer de database

Nu moet u de MariaDB-server con­fi­gu­re­ren. Dit omvat het opgeven van toe­gangs­ge­ge­vens, be­vei­li­gings­in­stel­lin­gen en andere da­ta­ba­se­pa­ra­me­ters.

Stap 5: Start MariaDB

Start de MariaDB-ser­ver­ser­vi­ce. In Windows kunt u dit doen met Service Manager. In Linux en macOS kunt u dit doen via de op­dracht­re­gel met sudo systemctl start mariadb of sudo service mariadb start.

Stap 6: Voer de eerste con­fi­gu­ra­tie uit

Na het starten van MariaDB con­fi­gu­reert u het met behulp van het commando mysql_secure_installation. Met dit commando kunt u be­lang­rij­ke be­vei­li­gings­in­stel­lin­gen de­fi­ni­ë­ren, zoals wacht­woor­den en het ver­wij­de­ren van test­ac­counts.

Stap 7: Test de toegang tot de database

Con­tro­leer of u ver­bin­ding kunt maken met de database. Log in als root­ge­brui­ker met mysql -u root -p. Voer uw wacht­woord in en voer enkele een­vou­di­ge SQL-query’s uit om te con­tro­le­ren of de server correct werkt.

Optie 2: MariaDB SkySQL gebruiken

MariaDB SkySQL is een cloud­ge­ba­seerd da­ta­ba­se­pro­gram­ma waarmee je MariaDB-databases in de cloud kunt gebruiken. Het programma bevat de MariaDB En­ter­pri­se Server en biedt au­to­ma­ti­sche schaal­baar­heid, hoge be­schik­baar­heid en ge­ïn­te­greer­de be­vei­li­gings­func­ties.

Stap 1: Re­gi­streer en log in

Ga naar de officiële website van MariaDB SkySQL en re­gi­streer een account, als u dat nog niet hebt gedaan. Log ver­vol­gens in.

Stap 2: Maak een nieuwe service aan

Nadat u bent ingelogd, wordt u door­ge­stuurd naar de start­pa­gi­na van SkySQL. Klik op de knop om een nieuwe da­ta­ba­se­ser­vi­ce aan te maken. Kies een ser­vi­ce­ty­pe. U kunt kiezen uit ver­schil­len­de MariaDB-platforms, waaronder MariaDB En­ter­pri­se Server en andere da­ta­ba­se­ser­vi­ces.

Stap 3: Con­fi­gu­reer de service

Con­fi­gu­reer de service, inclusief het se­lec­te­ren van een MariaDB-versie, da­ta­base­ca­pa­ci­teit en andere re­sour­ce­pa­ra­me­ters. U kunt ook opties kiezen voor hoge be­schik­baar­heid en au­to­ma­ti­sche schaal­baar­heid. Definieer de au­then­ti­ca­tie- en be­vei­li­gings­in­stel­lin­gen. Dat omvat het con­fi­gu­re­ren van ge­brui­kers­na­men en wacht­woor­den en het beheren van de toegang tot de database.

Stap 4: Maak ver­bin­ding met de database

Nadat de service is ge­ïm­ple­men­teerd, ontvangt u in­for­ma­tie over de hostnaam, poort, ge­brui­kers­naam en wacht­woord. Gebruik deze in­for­ma­tie om ver­bin­ding te maken met uw database. Voer enkele een­vou­di­ge query’s uit om te con­tro­le­ren of de service werkt.

Stap 5: Con­tro­leer en beheer de database

MariaDB SkySQL biedt mo­ni­to­ring- en ana­ly­se­tools voor het bewaken van de pres­ta­ties van uw database. Gebruik deze tools om ervoor te zorgen dat uw database optimaal presteert. Indien nodig kunt u uw database beheren en schalen door uw re­sour­ce­pa­ra­me­ters aan te passen of extra functies te activeren.

Hoe ver­bin­ding maken met de MariaDB-server

U kunt de MariaDB-bi­bli­o­theek voor Python gebruiken om ver­bin­ding te maken met een MariaDB-database en da­ta­ba­se­be­wer­kin­gen uit te voeren, zoals het opvragen, invoegen of bijwerken van gegevens. In­stal­leer de bi­bli­o­theek met behulp van de pak­ket­be­heer­der pip:

pip3 install mariadb
shell

Nu kun je ver­bin­ding maken met MariaDB met Python.

Stap 1: Maak een ver­bin­ding

Eerst moet u de bi­bli­o­theek im­por­te­ren en een ver­bin­ding met uw MariaDB-database tot stand brengen. Hiervoor hebt u in­for­ma­tie nodig zoals de hostnaam, poort, da­ta­ba­se­naam, ge­brui­kers­naam en wacht­woord.

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()
python

De cursor is een object dat u kunt gebruiken om da­ta­ba­se­be­wer­kin­gen uit te voeren in een re­la­ti­o­ne­le database zoals MariaDB. Deze be­wer­kin­gen omvatten bij­voor­beeld SQL-query’s en het verwerken van gegevens. In Python ontvangt u een cursor nadat u een ver­bin­ding met de database tot stand hebt gebracht. U kunt deze ophalen met behulp van de methode cursor().

Stap 2: Gegevens opvragen

Nu gaan we de cursor gebruiken om SQL-query’s uit te voeren en gegevens uit de database op te halen.

# 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)
python

Stap 3: Gegevens invoeren

Om gegevens in een tabel in te voegen, de­fi­ni­eert u een SQL INSERT-query en voert u deze uit met behulp van de cursor.

# 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()
python

De SQL INSERT-in­struc­tie geeft aan in welke tabel (your_table) en welke kolommen (column1 en column2) u gegevens invoert. Plaats­hou­ders zoals %s staan voor de waarden die worden ingevoegd. De tuple values bevat de over­een­kom­sti­ge waarden die u in de database invoert. De cursor voert de INSERT-query uit met de waarden die u opgeeft. Ten slotte bevestigt de methode conn.commit() de trans­ac­tie om ervoor te zorgen dat de wij­zi­gin­gen permanent in de database worden op­ge­sla­gen.

Stap 4: Sluit de ver­bin­ding

Zodra de da­ta­ba­se­be­wer­kin­gen zijn voltooid, sluit u de cursor en de ver­bin­ding om bronnen vrij te maken.

# Close cursor and connection
cursor.close()
conn.close()
python

Stap 5: Fouten af­han­de­len

Het is be­lang­rijk om fout­af­han­de­ling op te nemen, zodat u eventuele uit­zon­de­rin­gen kunt opvangen die zich voordoen bij het tot stand brengen van de ver­bin­ding of het uitvoeren van query’s.

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()
python

U kunt deze ba­sis­struc­tuur aanpassen aan uw spe­ci­fie­ke toe­pas­sing en ver­schil­len­de da­ta­ba­se­be­wer­kin­gen im­ple­men­te­ren.

Hier is de volledige code:

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
Ga naar hoofdmenu