# Kuidas ühendada MariaDB Pythoniga

Pythonit ja MariaDB-d saab kasutada **andmebaasi** tõhusaks **ühendamiseks** rakendustega ja teabe töötlemiseks. Python ja MariaDB sobivad eriti hästi veebirakenduste, andmete analüüsi ja aruannete automatiseerimise jaoks.

## Millised on eeltingimused?

Python-programmide ühendamiseks MariaDB-ga peate täitma järgmised nõuded:

- **Python installatsioonid**: Teie süsteemis peab olema installitud Python. Veenduge, et kasutate MariaDB poolt toetatavat versiooni.
- **MariaDB andmebaas**: Teil peab olema töökorras MariaDB andmebaas. Võite kasutada kohalikku MariaDB installatsiooni või luua ühenduse kaugandmebaasiga.
- **Andmebaasi juurdepääsuandmed**: MariaDB andmebaasiga ühenduse loomiseks on vaja selliseid andmeid nagu hosti nimi, port, andmebaasi nimi, kasutajanimi ja parool.
- **Python-moodul**: MariaDB-ga ühenduse loomiseks peab olema installitud Python/Connector-moodul.

## Kuidas valmistada ette ja installida MariaDB koos Pythoniga

MariaDB serverile juurdepääsuks on kaks võimalust. Võite installida MariaDB serveri oma arvutisse või serverisse või kasutada MariaDB platvormi pilves.

### Võimalus 1: MariaDB installimine riistvarale

**MariaDB paketi** allalaadimine ja installimine oma riistvarale on üsna lihtne. Siin on samm-sammult juhised selle tegemiseks:

**1. samm: Kontrollige süsteeminõudeid**

Kontrollige MariaDB installimise nõudeid oma süsteemis. Veenduge, et teie riistvara vastab miinimumnõuetele, nagu piisav kettaruum ja mälu.

**2. samm: Lae alla MariaDB**

Mine MariaDB ametlikule veebisaidile ja vali oma operatsioonisüsteemi (Windows, Linux või macOS) jaoks sobiv allalaadimisversioon. Veendu, et valisid oma süsteemile sobiva versiooni.

**3. samm: Paketi installimine**

Lae alla oma operatsioonisüsteemi ja arhitektuuri (32-bitine või 64-bitine) jaoks sobiv pakett. Kui allalaadimine on lõppenud, käivita installatsioon. Installatsioon algab erinevatel operatsioonisüsteemidel erinevalt. Näiteks [MariaDB installimiseks Ubuntu 20.04-le](https://www.ionos.com/et-ee/digitalguide/hosting/tehnilised-kuesimused/mariadb-installimine-ubuntu-2004-le/) sisesta käsk `sudo apt install mariadb-server`.

**4. samm: Konfigureerige andmebaas**

Nüüd peate konfigureerima MariaDB serveri. See hõlmab juurdepääsuandmete, turvasätete ja muude andmebaasi parameetrite määramist.

**5. samm: Käivita MariaDB**

Käivitage MariaDB serveriteenus. Windowsis saate seda teha **teenuste halduri** abil. Linuxis ja macOS-is saate seda teha käsurealt numbriga `sudo systemctl start mariadb` või `sudo service mariadb start`.

**6. samm: Esialgse konfiguratsiooni tegemine**

Pärast MariaDB käivitamist konfigureerige see käsuga `mysql_secure_installation`. Käsuga saate määrata olulised turvasätted, nagu paroolid ja testkontode kustutamine.

**7. samm: Testige andmebaasi juurdepääsu**

Kontrollige, kas saate ühenduda andmebaasiga. Logige sisse root-kasutajana numbriga `mysql -u root -p`. Sisestage oma parool ja käivitage mõned lihtsad SQL-päringud, et veenduda serveri nõuetekohases töös.

### Variant 2: Kasuta MariaDB SkySQL

MariaDB SkySQL on **pilvepõhine andmebaasiplatvorm**, mida saab kasutada MariaDB andmebaaside käitamiseks pilves. Platvorm sisaldab MariaDB Enterprise Serverit ja pakub automaatset skaleerimist, kõrget kättesaadavust ja integreeritud turvaomadusi.

**1. samm: Registreeru ja logi sisse**

Mine MariaDB SkySQL ametlikule veebisaidile ja registreeri endale konto, kui sul seda veel pole. Seejärel logi sisse.

**2. samm: Loo uus teenus**

Pärast sisselogimist suunatakse teid SkySQLi kodulehele. Klõpsake nuppu, et luua uus andmebaasiteenus. Valige teenuse tüüp. Valida saab erinevate MariaDB platvormide hulgast, sealhulgas **MariaDB Enterprise Server** ja muud andmebaasiteenused.

**3. samm: Teenuse konfigureerimine**

Konfigureerige teenus, sealhulgas valige MariaDB versioon, andmebaasi maht ja muud **ressursiparameetrid**. Samuti saate valida kõrge kättesaadavuse ja automaatse skaleerimise valikud. Määrake autentimise ja turvalisuse seaded. See hõlmab kasutajanimede ja paroolide konfigureerimist ning andmebaasile juurdepääsu haldamist.

**4. samm: Ühendage andmebaasiga**

Pärast teenuse kasutuselevõttu saate teavet hosti nime, pordi, kasutajanime ja parooli kohta. Kasutage seda teavet, et ühenduda oma andmebaasiga. Tehke mõned lihtsad päringud, et veenduda teenuse töökorras olekus.

**5. samm: Andmebaasi jälgimine ja haldamine**

MariaDB SkySQL pakub **järelevalve- ja analüüsivahendeid** andmebaasi jõudluse jälgimiseks. Kasutage neid vahendeid, et tagada andmebaasi optimaalne töö. Vajaduse korral saate andmebaasi hallata ja skaleerida, kohandades ressursside parameetreid või aktiveerides lisafunktsioone.

## Kuidas ühenduda MariaDB serveriga

Pythoni jaoks mõeldud MariaDB-teeki saab kasutada MariaDB-andmebaasiga ühenduse loomiseks ja andmebaasioperatsioonide, nagu päringute tegemine, andmete sisestamine või uuendamine, sooritamiseks. Paigaldage teek **pakettide halduri** abil `pip`:

```shell
pip3 install mariadb
```

Nüüd saate Pythoniga MariaDB-ga ühendust luua.

### 1. samm: Ühenduse loomine

Esmalt peate importima raamatukogu ja looma ühenduse oma MariaDB andmebaasiga. Selleks vajate sellist teavet nagu hosti nimi, port, andmebaasi nimi, kasutajanimi ja parool.

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

**Kursor** on objekt, mida saab kasutada andmebaasioperatsioonide tegemiseks relatsioonilises andmebaasis, nagu MariaDB. Need operatsioonid hõlmavad näiteks SQL-päringuid ja andmete töötlemist. Pythonis saate kursori pärast andmebaasiga ühenduse loomist. Saate selle kätte meetodiga `cursor()`.

### 2. samm: Andmete päring

Nüüd kasutame kursorit SQL-päringute tegemiseks ja andmete hankimiseks andmebaasist.

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

### 3. samm: Sisesta andmed

Andmete tabelisse sisestamiseks määrake **SQL INSERT päring** ja käivitage see kursori abil.

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

SQL INSERT-käsk näitab, millisesse tabelisse (`your_table`) ja millistesse veergudesse (`column1` ja `column2`) andmed sisestatakse. Asendusmärgid, nagu `%s`, tähistavad sisestatavaid väärtusi. Tuple `values` sisaldab vastavaid väärtusi, mis sisestatakse andmebaasi. Kursor täidab **INSERT-päringu** teie määratud väärtustega. Lõpuks kinnitab meetod `conn.commit()` tehingu, et tagada muudatuste püsiv salvestamine andmebaasi.

### 4. samm: Sulge ühendus

Kui andmebaasi operatsioonid on lõpetatud, sulgege kursor ja ühendus, et vabastada ressursid.

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

### 5. samm: Veadega tegelemine

On oluline lisada veahaldus, et saaksite tabada kõik võimalikud erandid, mis tekivad ühenduse loomisel või päringute täitmisel.

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

Saate seda põhistruktuuri oma konkreetsele rakendusele kohandada ja rakendada erinevaid andmebaasioperatsioone.

Siin on täielik kood:

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


This is a markdown version of: [https://www.ionos.com/et-ee/digitalguide/veebisaidid/veebiarendus/python-mariadb/](https://www.ionos.com/et-ee/digitalguide/veebisaidid/veebiarendus/python-mariadb/) for AI/LLM consumption.