# Como conectar Python e MariaDB

Com Python e MariaDB, você pode conectar aplicações de forma eficiente a um **banco de dados** e processar informações. A combinação Python-MariaDB é particularmente adequada para aplicações web, análises de dados e automação de relatórios.

## Quais são os requisitos da conexão?

Antes de conectar programas Python ao MariaDB, os seguintes requisitos devem ser atendidos:

- **Instalação do Python**: você deve ter o Python instalado em seu sistema. Certifique-se de usar uma versão compatível.
- **Banco de dados MariaDB**: é necessário um banco de dados MariaDB funcional. Você pode usar uma instalação local do MariaDB ou se conectar a um banco de dados remoto.
- **Credenciais de acesso ao banco de dados**: você precisará de informações como o nome do host, porta, nome do banco de dados, nome de usuário e senha para se conectar ao MariaDB.
- **Módulo Python**: o módulo Connector/Python para conexão com o MariaDB deve estar instalado.

## Preparação e instalação

Existem duas maneiras de acessar um servidor MariaDB. Você pode instalar um servidor MariaDB em seu próprio computador ou servidor, ou utilizar a plataforma MariaDB na nuvem.

### Opção 1: Instalar o servidor MariaDB no hardware

É bastante simples baixar o **pacote MariaDB** e instalá-lo em seu próprio hardware. Aqui está um guia detalhado:

**Passo 1: Verificar os requisitos do sistema**

Verifique os requisitos para a instalação do MariaDB em seu sistema. Certifique-se de que o hardware atende aos requisitos mínimos, como espaço de armazenamento e memória RAM suficientes.

**Passo 2: Baixar o MariaDB**

Visite o site oficial do MariaDB e escolha o tipo de download adequado com base no seu sistema operacional (Windows, Linux ou macOS). Certifique-se de selecionar a versão correta para o seu sistema.

**Passo 3: Instalar o pacote**

Baixe o pacote correto para o seu sistema operacional e arquitetura (32 bits ou 64 bits). Após o download, execute a instalação conforme o seu sistema operacional. Por exemplo, para [instalar o MariaDB no Ubuntu 20.04](https://www.ionos.com/pt-br/digitalguide/hospedagem/tecnologia-de-hospedagem/instalar-mariadb-no-ubuntu-2004/), use o comando `sudo apt install mariadb-server`.

**Passo 4: Configuração do banco de dados**

Após a instalação, configure o servidor MariaDB. Isso inclui definir credenciais de acesso, configurações de segurança e outros parâmetros do banco de dados.

**Passo 5: Iniciar o MariaDB**

Inicie o serviço do servidor MariaDB. No Windows, isso é feito pelo **Gerenciador de Serviços**. No Linux e macOS, use a linha de comando com `sudo systemctl start mariadb` ou `sudo service mariadb start`.

**Passo 6: Realizar a configuração inicial**

Após iniciar, configure o MariaDB executando o comando `mysql_secure_installation`. Esse comando ajuda a definir configurações importantes de segurança, como definir senhas e remover contas de teste.

**Passo 7: Testar o acesso ao banco de dados**

Verifique se você pode se conectar ao banco de dados com sucesso. Faça login como usuário root com `mysql -u root -p`, insira sua senha e execute algumas consultas SQL simples para garantir que o servidor está funcionando corretamente.

### Opção 2: Usar o MariaDB SkySQL

O MariaDB SkySQL é uma **plataforma de banco de dados baseada na nuvem** que permite operar bancos de dados MariaDB de maneira fácil e eficiente. A plataforma inclui o MariaDB Enterprise Server e oferece uma série de vantagens, como escalabilidade automática, alta disponibilidade e recursos de segurança integrados.

**Passo 1: Registrar e fazer login**

Visite o site oficial do MariaDB SkySQL e crie uma conta, caso ainda não tenha uma. Faça login com suas credenciais.

**Passo 2: Criar um novo serviço**

Após o login, você será redirecionado para a página inicial do SkySQL. Clique em “Criar novo serviço” ou em um botão semelhante para iniciar um novo serviço de banco de dados. Escolha o tipo de serviço desejado. Você pode escolher entre várias plataformas MariaDB, incluindo o **MariaDB Enterprise Server** e outros serviços de banco de dados.

**Passo 3: Configurar o serviço**

Personalize a configuração do serviço, incluindo a seleção da versão do MariaDB, capacidade do banco de dados e outros **parâmetros**. Você também pode aproveitar as opções de alta disponibilidade e escalabilidade automática. Defina as configurações de autenticação e segurança, como nomes de usuário e senhas, além do gerenciamento de direitos de acesso ao banco de dados.

**Passo 4: Conectar-se ao banco de dados**

Após o serviço ser provisionado, você receberá informações sobre o host, a porta, o nome de usuário e a senha. Use essas informações para se conectar ao seu banco de dados. Execute algumas consultas simples para verificar se o serviço está funcionando.

**Passo 5: Monitorar e gerenciar o banco de dados**

O MariaDB SkySQL oferece **ferramentas de monitoramento e análise** que possibilitam acompanhar o desempenho do seu banco de dados. Utilize essas ferramentas para garantir que seu banco de dados está funcionando de maneira ideal. Você pode gerenciar e escalar seu banco de dados conforme necessário, ajustando os parâmetros de desempenho ou ativando funcionalidades adicionais.

## Conexão com o servidor MariaDB

Com a biblioteca `mariadb` para Python, você pode se conectar a um banco de dados MariaDB e realizar diversas operações de banco de dados, como consultas, inserções e atualizações de dados. Instale a biblioteca com o **gerenciador de pacotes** `pip`:

```shell
pip3 install mariadb
```

Agora, você pode se conectar ao MariaDB com Python.

### Passo 1: Estabelecer conexão

Primeiro, você precisa importar a biblioteca e conectar-se ao seu banco de dados MariaDB. Para isso, você precisará de informações como o nome do host, a porta, o nome do banco de dados, o nome de usuário e a senha.

```python
import mariadb
# Detalhes da conexão com o banco de dados
db_config = {
    'user': 'your_username',
    'password': 'your_password',
    'host': 'your_hostname',
    'database': 'your_database',
    'port': 3306  # Porta padrão para MariaDB
}
# Estabelecendo a conexão
conn = mariadb.connect(**db_config)
# Criar um cursor para executar consultas
cursor = conn.cursor()
```

O **cursor** é um objeto que permite realizar operações em um banco de dados relacional, como o MariaDB. Isso inclui, por exemplo, consultas SQL e a manipulação de dados. Em Python, você obtém um cursor após estabelecer uma conexão com o banco de dados. Ele é chamado pelo método `cursor()`.

### Passo 2: Consultar dados

A seguir, usaremos o cursor para executar consultas SQL e recuperar dados do banco de dados.

```python
# Definir a consulta SQL
sql_query = "SELECT * FROM your_table"
# Executar a consulta
cursor.execute(sql_query)
# Buscar resultados
results = cursor.fetchall()
# Exibir dados
for row in results:
    print(row)
```

### Passo 3: Adicionar dados

Para inserir dados em uma tabela, defina uma **consulta SQL `INSERT`** e execute-a com o cursor.

```python
# Definir a consulta SQL de inserção
insert_query = "INSERT INTO your_table (column1, column2) VALUES (%s, %s)"
# Valores a serem inseridos
values = ('value1', 'value2')
# Executar a consulta de inserção
cursor.execute(insert_query, values)
# Confirmar a transação
conn.commit()
```

A instrução SQL `INSERT` especifica em qual tabela (`your_table`) e colunas (`column1` e `column2`) os dados serão inseridos. Os placeholders como `%s` representam os valores a serem inseridos. A tupla `values` armazena esses valores antes da inserção no banco de dados. O cursor executa a **consulta INSERT** com os valores fornecidos. Em seguida, o método `conn.commit()` confirma a transação para garantir que as alterações sejam permanentemente salvas no banco de dados.

### Passo 4: Encerrar conexão

Após concluir suas operações no banco de dados, feche o cursor e a conexão para liberar recursos.

```python
# Fechar cursor e conexão
cursor.close()
conn.close()
```

### Passo 5: Tratar erros

É importante incluir o tratamento de erros para capturar possíveis exceções ao estabelecer a conexão ou executar consultas.

```python
try:
    # Estabelecendo a conexão
    conn = mariadb.connect(**db_config)
    # Criar um cursor
    cursor = conn.cursor()
 # Executar a consulta
    cursor.execute(sql_query)
    # Buscar resultados
    results = cursor.fetchall()
    for row in results:
        print(row)
except mariadb.Error as err:
    print(f"Erro: {err}")
finally:
    # Fechar cursor e conexão
    if cursor:
        cursor.close()
    if conn:
        conn.close()
```

Você pode adaptar essa estrutura básica às necessidades da sua aplicação para executar consultas, inserções, atualizações e outras operações no banco de dados.

Aqui está o código completo:

```python
import mariadb
# Detalhes da conexão com o banco de dados
db_config = {
    'user': 'your_username',
    'password': 'your_password',
    'host': 'your_hostname',
    'database': 'your_database',
    'port': 3306  # Porta padrão para MariaDB
}
try:
    # Estabelecendo a conexão
    conn = mariadb.connect(**db_config)
    # Criar um cursor para executar consultas
    cursor = conn.cursor()
    # Definir a consulta SQL
    sql_query = "SELECT * FROM your_table"
    # Executar a consulta
    cursor.execute(sql_query)
    # Buscar resultados
    results = cursor.fetchall()
    # Exibir dados
    for row in results:
        print(row)
    # Definir a consulta SQL de inserção
    insert_query = "INSERT INTO your_table (column1, column2) VALUES (%s, %s)"
    # Valores a serem inseridos
    values = ('value1', 'value2')
    # Executar a consulta de inserção
    cursor.execute(insert_query, values)
    # Confirmar a transação
    conn.commit()
except mariadb.Error as err:
    print(f"Erro: {err}")
finally:
    # Fechar cursor e conexão
    if cursor:
        cursor.close()
    if conn:
        conn.close()
```


This is a markdown version of: [https://www.ionos.com/pt-br/digitalguide/sites-de-internet/desenvolvimento-web/python-mariadb/](https://www.ionos.com/pt-br/digitalguide/sites-de-internet/desenvolvimento-web/python-mariadb/) for AI/LLM consumption.