Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

impor koneksi database saya dengan python

Itu mungkin, tetapi bukan ide yang baik untuk mencampur kode dan data (apa pun - konfigurasi, HTML, dll.), setidaknya karena dua alasan:

  • Desain - Anda akan mendapatkan apa yang disebut kopling tinggi . Situasi di mana terdapat banyak ketergantungan, sulit diikuti, dan aplikasi Anda semakin sulit untuk dimodifikasi.
  • Keamanan - kredensial Anda cepat atau lambat akan berakhir di beberapa arsip atau repositori cadangan kode. File konfigurasi juga dapat dienkripsi, file py tidak juga. Jika ini adalah aplikasi web, lebih mudah untuk membatasi akses ke file konfigurasi tunggal daripada ke semua file py yang dapat memiliki data sensitif.

Anda masih dapat membuat fungsi penanganan koneksi yang terpisah dan mudah digunakan ini. Namun pindahkan kredensial koneksi Anda ke file konfigurasi terpisah.

config.ini:

[mysqlDB]
host = '0.0.0.0'
db = 'test'
user = 'root'
pass = 'pswd'

Anda dapat membaca konfigurasi di file py koneksi Anda atau membuatnya lebih global (yaitu singleton?). Jika Anda ingin membaca konfigurasi dalam file koneksi:

storage.py:

import configparser
import MySQLdb.cursors

config = configparser.ConfigParser()
config.read('config.ini')

def connect():
    return MySQLdb.connect(host = config['mysqlDB']['host'],
                           user = config['mysqlDB']['user'],
                           passwd = config['mysqlDB']['pass'],
                           db = config['mysqlDB']['db'])

Contoh penggunaan:

import storage

conn = storage.connect()


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengubah IP menjadi Long di MySQL

  2. Kesalahan MySQL 2006 (HY000) pada baris 406:Server MySQL telah hilang

  3. JSON_EXTRACT() – Mengembalikan Data dari Dokumen JSON di MySQL

  4. MySQL/SQL:Perbarui dengan subquery yang berkorelasi dari tabel yang diperbarui itu sendiri

  5. Bagaimana saya bisa mengembalikan hak penuh pengguna root MySQL?