Pomocí Pythonu a MariaDB můžete efektivně propojit databázi s aplikacemi a zpracovávat informace. Kombinace Pythonu a MariaDB je vhodná zejména pro webové aplikace, analýzu dat a automatizaci reportů.

Jaké jsou předpoklady?

Abyste mohli propojit programy Python s MariaDB, musíte splnit následující požadavky:

  • Instalace Pythonu: Ve vašem systému musí být nainstalován Python. Ujistěte se, že používáte verzi, kterou MariaDB podporuje.
  • Databáze MariaDB: Musíte mít funkční databázi MariaDB. Můžete buď použít lokální instalaci MariaDB, nebo vytvořit připojení ke vzdálené databázi.
  • Přístupové údaje k databázi: K připojení k databázi MariaDB budete potřebovat informace jako název hostitele, port, název databáze, uživatelské jméno a heslo.
  • Modul Python: Měl by být nainstalován modul Python/Connector pro připojení k MariaDB.

Jak připravit a nainstalovat MariaDB s Pythonem

Existují dvě možnosti, jak získat přístup k serveru MariaDB. Můžete si nainstalovat server MariaDB na svůj vlastní počítač nebo server, nebo můžete využít platformu MariaDB v cloudu.

Možnost 1: Nainstalujte MariaDB na hardware

Stažení a instalace balíčku MariaDB na váš vlastní hardware je velmi jednoduchá. Zde je postup krok za krokem:

Krok 1: Zkontrolujte systémové požadavky

Zkontrolujte požadavky na instalaci MariaDB ve vašem systému. Ujistěte se, že váš hardware splňuje minimální požadavky, jako je dostatečný prostor na disku a paměť.

Krok 2: Stáhněte si MariaDB

Přejděte na oficiální webové stránky MariaDB a vyberte si stažení pro váš operační systém (Windows, Linux nebo macOS). Ujistěte se, že jste vybrali správnou verzi pro váš systém.

Krok 3: Nainstalujte balíček

Stáhněte si balíček pro váš operační systém a architekturu (32bitovou nebo 64bitovou). Po dokončení stahování spusťte instalaci. Instalace se bude lišit v závislosti na operačním systému. Chcete-li například nainstalovat MariaDB na Ubuntu 20.04, zadejte příkaz sudo apt install mariadb-server.

Krok 4: Nakonfigurujte databázi

Nyní je třeba nakonfigurovat server MariaDB. To zahrnuje zadání přístupových údajů, nastavení zabezpečení a dalších parametrů databáze.

Krok 5: Spusťte MariaDB

Spusťte službu serveru MariaDB. Ve Windows to můžete provést pomocí Správce služeb. V Linuxu a macOS to můžete provést v příkazovém řádku pomocí sudo systemctl start mariadb nebo sudo service mariadb start.

Krok 6: Proveďte počáteční konfiguraci

Po spuštění MariaDB jej nakonfigurujte pomocí příkazu mysql_secure_installation. Tento příkaz vám pomůže definovat důležitá bezpečnostní nastavení, jako jsou hesla a mazání testovacích účtů.

Krok 7: Otestujte přístup k databázi

Zkontrolujte, zda se můžete připojit k databázi. Přihlaste se jako uživatel root pomocí mysql -u root -p. Zadejte heslo a spusťte několik jednoduchých dotazů SQL, abyste se ujistili, že server funguje správně.

Možnost 2: Použijte MariaDB SkySQL

MariaDB SkySQL je cloudová databázová platforma, kterou můžete použít k provozování databází MariaDB v cloudu. Platforma zahrnuje MariaDB Enterprise Server a nabízí automatické škálování, vysokou dostupnost a integrované bezpečnostní funkce.

Krok 1: Zaregistrujte se a přihlaste se

Přejděte na oficiální web MariaDB SkySQL a zaregistrujte si účet, pokud jej ještě nemáte. Poté se přihlaste.

Krok 2: Vytvořte novou službu

Po přihlášení budete přesměrováni na domovskou stránku SkySQL. Klikněte na tlačítko pro vytvoření nové databázové služby. Vyberte typ služby. Můžete si vybrat z různých platforem MariaDB, včetně MariaDB Enterprise Server a dalších databázových služeb.

Krok 3: Nakonfigurujte službu

Nakonfigurujte službu, včetně výběru verze MariaDB, kapacity databáze a dalších parametrů zdrojů. Můžete také vybrat možnosti pro vysokou dostupnost a automatické škálování. Definujte nastavení ověřování a zabezpečení. To zahrnuje konfiguraci uživatelských jmen a hesel a správu přístupu k databázi.

Krok 4: Připojte se k databázi

Po nasazení služby obdržíte informace o názvu hostitele, portu, uživatelském jménu a hesle. Tyto informace použijte k připojení k databázi. Proveďte několik jednoduchých dotazů, abyste se ujistili, že služba funguje.

Krok 5: Monitorujte a spravujte databázi

MariaDB SkySQL nabízí monitorovací a analytické nástroje pro sledování výkonu vaší databáze. Tyto nástroje můžete využít k zajištění optimálního chodu vaší databáze. V případě potřeby můžete spravovat a škálovat svou databázi úpravou parametrů zdrojů nebo aktivací dalších funkcí.

Jak se připojit k serveru MariaDB

K připojení k databázi MariaDB a provádění databázových operací, jako jsou dotazy, vkládání nebo aktualizace dat, můžete použít knihovnu MariaDB pro Python. Nainstalujte knihovnu pomocí správce balíčků pip:

pip3 install mariadb
shell

Nyní se můžete připojit k MariaDB pomocí Pythonu.

Krok 1: Navázat spojení

Nejprve je třeba importovat knihovnu a navázat připojení k databázi MariaDB. K tomu budete potřebovat informace jako název hostitele, port, název databáze, uživatelské jméno a heslo.

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

Kurzor je objekt, který můžete použít k provádění databázových operací v relační databázi, jako je MariaDB. Mezi tyto operace patří například SQL dotazy a zpracování dat. V jazyce Python získáte kurzor po navázání připojení k databázi. Můžete jej načíst pomocí metody cursor().

Krok 2: Dotaz na data

Nyní použijeme kurzor k provádění dotazů SQL a načítání dat z databáze.

# 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

Krok 3: Vložte data

Chcete-li vložit data do tabulky, definujte dotaz SQL INSERT a proveďte jej pomocí kurzoru.

# 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

Příkaz SQL INSERT určuje, do které tabulky (your_table) a do kterých sloupců (column1 a column2) vkládáte data. Zástupné symboly, jako je %s, představují hodnoty, které budou vloženy. Tuple values obsahuje odpovídající hodnoty, které zadáváte do databáze. Kurzor provede dotaz INSERT s hodnotami, které zadáte. Nakonec metoda conn.commit() potvrdí transakci, aby se zajistilo, že změny budou trvale uloženy v databázi.

Krok 4: Ukončete připojení

Po dokončení operací s databází zavřete kurzor a připojení, aby se uvolnily zdroje.

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

Krok 5: Zpracování chyb

Je důležité zahrnout zpracování chyb, abyste mohli zachytit všechny možné výjimky, které se vyskytnou při navazování připojení nebo provádění dotazů.

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

Tuto základní strukturu můžete přizpůsobit pro konkrétní použití a implementovat různé databázové operace.

Zde je kompletní kód:

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
Přejít do hlavního menu