Como conectar a um banco de dados MySQL usando Python

Conectar a um banco de dados MySQL usando Python

A linguagem Python é muito poderosa. Com ela, é possível realizar praticamente qualquer tipo de tarefa computacional desejada, desde a criação de scripts simples de configuração até algoritmos avançados empregados em machine learning e inteligência artificial.

Com o Python também podemos escrever scripts que se conectam a bancos de dados relacionais, permitindo realizar operações diversas como as operações CRUD básicas (Create, Read, Update, Delete) ou a execução de declarações SQL diversas e procedimentos armazenados, triggers, funções e outros tipos de rotinas.

conectar a um banco de dados MySQL usando Python

Neste artigo vamos mostrar como realizar a conexão de um script em Python a um banco de dados MySQL, e como testar essa conexão. Para tal, vamos empregar o módulo mysql-connector-python, específico para a conexão a este sistema de gerenciamento de bancos de dados.

Passos para a conexão ao MySQL

Vejamos os passos que devemos seguir para realizar a conexão a um banco de dados MySQL usando um script em Python.

  1. Ter o MySQL Server instalado, configurado e em execução na máquina local. Preferencialmente, ter um banco de dados já criado para testar a conexão.
  2. É necessário instalar o conector para MySQL do Python, que pode ser instalado usando o gerenciador de pacotes pip (no prompt / terminal) com o comando a seguir:
    $ pip3 install mysql-connector-python
  3. Com o método mysql.connector.connect() do conector MySQL Python iremos conectar o script Python ao banco de dados MySQL passando os parâmetros requeridos, que incluem o nome do host, nome do banco de dados, usuário e senha para a conexão..
  4. Após efetivar a conexão usamos o objeto retornado pelo método connect() para criar um objeto cursor que permitirá realizar operações no banco de dados, como as declarações SQL para consultas, inserções, atualizações e exclusões de registros, entre outras.
  5. Neste ponto podemos então executar as consultas SQL desejadas a partir do Python com o método cursor.execute().
  6. Após terminar de realizar as consultas, fechamos o objeto cursor com o método cursor.close(), e também fechamos a conexão ao banco MySQL com o método connection.close() para liberar os recursos do sistema.
  7. Não esquecer de capturar exceções caso algum erro possa ocorrer durante esse processo (veremos esse passo na próxima lição).

Código de conexão e teste (simplificado):

A seguir, temos um código simplificado para o teste de conexão do Python a um banco MySQL. Não vamos aqui usar blocos try /catch nem aplicar técnicas de segurança mais robustas, pois o objetivo hoje é simplesmente mostrar como usar o módulo mysql-connector-python para criar uma conexão, criar um cursor e executar uma declaração SQL no banco selecionado.

import mysql.connector
con = mysql.connector.connect(host='localhost',database='db_MeusLivros',user='root',password='123**')
if con.is_connected():
    db_info = con.get_server_info()
    print("Conectado ao servidor MySQL versão ",db_info)
    cursor = con.cursor()
    cursor.execute("select database();")
    linha = cursor.fetchone()
    print("Conectado ao banco de dados ",linha)
if con.is_connected():
    cursor.close()
    con.close()
    print("Conexão ao MySQL foi encerrada")

Resultado:

======== RESTART: C:\Users\Boson\Downloads\Conectar-MySQL-IDLE.py ========
Conectado ao servidor MySQL versão 5.7.13-log
Conectado ao banco de dados ('db_meuslivros',)
Conexão ao MySQL foi encerrada
>>> 

Conexão iniciada e finalizada com sucesso ao banco de dados MySQL. Executamos também a declaração SQL do MySQL SELECT DATABASE(), a qual retorna o nome do banco de dados selecionado no momento.

No próximo artigo vamos executar declarações SQL no banco por meio desta conexão, incluindo a inserção de registros, consultas simples e operações de CRUD em geral.

Até!

 

Sobre Fábio dos Reis (1349 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

Escreva um comentário

Seu e-mail não será divulgado


*