# Kako povezati MariaDB s Pythonom

Python in MariaDB lahko uporabite za učinkovito **povezovanje podatkovne baze** z aplikacijami in obdelavo informacij. Kombinacija Python in MariaDB je še posebej primerna za spletne aplikacije, analizo podatkov in avtomatizacijo poročil.

## Kakšni so pogoji?

Za povezavo programov Python z MariaDB morate izpolniti naslednje zahteve:

- **Namestitve Python**: V sistemu morate imeti nameščen Python. Prepričajte se, da uporabljate različico, ki jo podpira MariaDB.
- **MariaDB baza podatkov**: Potrebujete delujočo MariaDB bazo podatkov. Lahko uporabite lokalno namestitev MariaDB ali ustvarite povezavo z oddaljeno bazo podatkov.
- **Podatki za dostop do baze podatkov**: Za povezavo z bazo podatkov MariaDB potrebujete podatke, kot so ime gostitelja, vrata, ime baze podatkov, uporabniško ime in geslo.
- **Python modul**: Namestiti morate Python/Connector modul za povezavo z MariaDB.

## Kako pripraviti in namestiti MariaDB s Pythonom

Za dostop do strežnika MariaDB imate na voljo dve možnosti. Strežnik MariaDB lahko namestite na svoj računalnik ali strežnik ali pa uporabite platformo MariaDB v oblaku.

### Možnost 1: Namestite MariaDB na strojno opremo

Prenos in namestitev **paketa MariaDB** na vašo lastno strojno opremo je precej preprosta. Tukaj je navodilo, kako to storiti korak za korakom:

**Korak 1: Preverite sistemske zahteve**

Preverite zahteve za namestitev MariaDB na vaš sistem. Prepričajte se, da vaša strojna oprema izpolnjuje minimalne zahteve, kot so zadostna prostora na disku in pomnilnika.

**Korak 2: Prenesite MariaDB**

Obiščite uradno spletno stran MariaDB in izberite prenos za svoj operacijski sistem (Windows, Linux ali macOS). Prepričajte se, da izberete pravo različico za svoj sistem.

**Korak 3: Namestite paket**

Prenesite paket za svoj operacijski sistem in arhitekturo (32-bitni ali 64-bitni). Po končanem prenosu zaženite namestitev. Namestitev se bo na različnih operacijskih sistemih začela različno. Če želite na primer [namestiti MariaDB na Ubuntu 20.04](https://www.ionos.com/sl-si/digitalguide/gostovanje/tehnicne-zadeve/namestite-mariadb-na-ubuntu-2004/), vnesite ukaz `sudo apt install mariadb-server`.

**Korak 4: Konfigurirajte bazo podatkov**

Sedaj morate konfigurirati strežnik MariaDB. To vključuje določitev podatkov za dostop, varnostnih nastavitev in drugih parametrov baze podatkov.

**Korak 5: Zaženite MariaDB**

Zaženite storitev strežnika MariaDB. V sistemu Windows to lahko storite s pomočjo **upravitelja storitev**. V sistemih Linux in macOS to lahko storite v ukazni vrstici z `sudo systemctl start mariadb` ali `sudo service mariadb start`.

**Korak 6: Izvedite začetno konfiguracijo**

Po zagonu MariaDB ga konfigurirajte z ukazom `mysql_secure_installation`. Ukaz vam pomaga določiti pomembne varnostne nastavitve, kot so gesla in brisanje testnih računov.

**Korak 7: Preizkusite dostop do baze podatkov**

Preverite, ali se lahko povežete z bazo podatkov. Prijavite se kot uporabnik root z `mysql -u root -p`. Vnesite geslo in izvedite nekaj preprostih poizvedb SQL, da se prepričate, da strežnik deluje pravilno.

### Možnost 2: Uporaba MariaDB SkySQL

MariaDB SkySQL je **platforma za podatkovne baze v oblaku**, ki jo lahko uporabljate za izvajanje podatkovnih baz MariaDB v oblaku. Platforma vključuje MariaDB Enterprise Server in ponuja samodejno prilagajanje velikosti, visoko razpoložljivost in integrirane varnostne funkcije.

**Korak 1: Registrirajte se in se prijavite**

Obiščite uradno spletno stran MariaDB SkySQL in se registrirajte za račun, če ga še nimate. Nato se prijavite.

**Korak 2: Ustvarite novo storitev**

Po prijavi boste preusmerjeni na domačo stran SkySQL. Kliknite na gumb za ustvarjanje nove storitve podatkovne zbirke. Izberite vrsto storitve. Izbirate lahko med različnimi platformami MariaDB, vključno z **MariaDB Enterprise Server** in drugimi storitvami podatkovnih zbirk.

**Korak 3: Konfigurirajte storitev**

Konfigurirajte storitev, vključno z izbiro različice MariaDB, zmogljivosti podatkovne zbirke in drugih **parametrov virov**. Izberete lahko tudi možnosti za visoko razpoložljivost in samodejno prilagajanje. Določite nastavitve za avtentifikacijo in varnost. To vključuje konfiguracijo uporabniških imen in gesel ter upravljanje dostopa do podatkovne zbirke.

**Korak 4: Povežite se z bazo podatkov**

Po namestitvi storitve boste prejeli informacije o imenu gostitelja, vratih, uporabniškem imenu in geslu. Te informacije uporabite za povezavo z vašo bazo podatkov. Izvedite nekaj preprostih poizvedb, da se prepričate, da storitev deluje.

**Korak 5: Nadzorujte in upravljajte z bazo podatkov**

MariaDB SkySQL ponuja **orodja za spremljanje in analizo**, s katerimi lahko spremljate delovanje svoje zbirke podatkov. Ta orodja uporabite, da zagotovite optimalno delovanje svoje zbirke podatkov. Po potrebi lahko zbirko podatkov upravljate in prilagajate tako, da spremenite parametre virov ali aktivirate dodatne funkcije.

## Kako se povezati s strežnikom MariaDB

Za povezavo z bazo podatkov MariaDB in izvajanje operacij, kot so poizvedovanje, vstavljanje ali posodabljanje podatkov, lahko uporabite knjižnico MariaDB za Python. Knjižnico namestite s pomočjo **upravitelja paketov** `pip`:

```shell
pip3 install mariadb
```

Sedaj se lahko povežete z MariaDB z uporabo Python.

### Korak 1: Vzpostavite povezavo

Najprej morate uvoziti knjižnico in vzpostaviti povezavo z vašo bazo podatkov MariaDB. Za to potrebujete podatke, kot so ime gostitelja, vrata, ime baze podatkov, uporabniško ime in geslo.

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

**Kurzor** je objekt, ki ga lahko uporabite za izvajanje operacij v relacijski bazi podatkov, kot je MariaDB. Te operacije vključujejo na primer poizvedbe SQL in obdelavo podatkov. V Pythonu prejmete kurzor, ko vzpostavite povezavo z bazo podatkov. Pridobite ga lahko z metodo `cursor()`.

### Korak 2: Poizvedba podatkov

Sedaj bomo s pomočjo kurzorja izvedli SQL poizvedbe in pridobili podatke iz baze podatkov.

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

### Korak 3: Vnesite podatke

Če želite vnesti podatke v tabelo, opredelite **poizvedbo SQL INSERT** in jo izvedite s pomočjo kazalca.

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

Izjava SQL INSERT navaja, v katero tabelo (`your_table`) in v katere stolpce (`column1` in `column2`) vnašate podatke. Nadomestni znaki, kot je `%s`, predstavljajo vrednosti, ki bodo vnesene. Tuple `values` vsebuje ustrezne vrednosti, ki jih vnašate v bazo podatkov. Kazalec izvede **poizvedbo INSERT** z vrednostmi, ki jih določite. Nazadnje metoda `conn.commit()` potrdi transakcijo, da se spremembe trajno shranijo v bazo podatkov.

### Korak 4: Zaprite povezavo

Ko so operacije z bazo podatkov končane, zaprite kurzor in povezavo, da sprostite vire.

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

### Korak 5: Obravnavanje napak

Pomembno je vključiti obravnavanje napak, da lahko zajamete morebitne izjeme, ki se pojavijo pri vzpostavljanju povezave ali izvajanju poizvedb.

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

To osnovno strukturo lahko prilagodite za svojo specifično aplikacijo in izvajate različne operacije z bazami podatkov.

Tukaj je celoten kod:

```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/sl-si/digitalguide/spletne-strani/razvoj-spletnih-strani/python-mariadb/](https://www.ionos.com/sl-si/digitalguide/spletne-strani/razvoj-spletnih-strani/python-mariadb/) for AI/LLM consumption.