ศูนย์คู่มือ Ruk-Com PaaS

คู่มือการพัฒนา Deploy และดูแล Application บนแพลตฟอร์ม

RUK-COM PAAS / DATABASES

คู่มือ Python Connection สำหรับ ฐานข้อมูล

คู่มือนี้เรียบเรียงสำหรับ Ruk-Com PaaS หน้าจอและตัวเลือกอาจแตกต่างตามเวอร์ชันและสิทธิ์ของบัญชี

ตรวจสอบ Environment, Region, สิทธิ์บัญชี และสำรองค่าปัจจุบันก่อนดำเนินการกับระบบจริง

คู่มือภาษาไทย

คำสั่ง ชื่อเมนู พารามิเตอร์ และค่าตัวอย่างในกรอบ Code คงรูปแบบตามระบบเพื่อให้คัดลอกและตรวจสอบได้ถูกต้อง

MySQL,มาเรียดีบี, และเพอร์โคนาเป็นฐานข้อมูลโอเพ่นซอร์สที่ใช้กันอย่างแพร่หลายทำตามคำแนะนำด้านล่างเพื่อเชื่อมต่อแอปพลิเคชัน Python ของคุณซึ่งโฮสต์บนแพลตฟอร์มกับหนึ่งในเซิร์ฟเวอร์ฐานข้อมูลเหล่านี้:

  1. เข้าสู่ระบบแดชบอร์ดแพลตฟอร์มและสร้าง Environment ใหม่กับทั้งอาปาเช่ไพธอน(หรือเครื่องยนต์หลาม) เซิร์ฟเวอร์แอปพลิเคชันและมาเรียดีบี(หรือMySQL/เพอร์โคนา) ฐานข้อมูล

Image 31: Python MariaDB environment

เคล็ดลับ:การวางทั้งสอง Node ใน Environment เดียวเป็นเพียงวิธีเดียวเท่านั้นคุณสามารถเชื่อมต่อ Environment ในลักษณะเดียวกันเมื่ออยู่ใน Environment ที่แยกจากกัน

  1. หลังจากสร้าง Environment แล้วให้เข้าถึงแอปพลิเคชันเซิร์ฟเวอร์ของคุณผ่าน SSH เช่นโดยการกดปุ่มเว็บ SSHปุ่ม.

Image 32: Python Web SSH buttonแท็บใหม่จะเปิดขึ้นพร้อมกับเทอร์มินัลและเซสชัน SSH ไปยัง Node ของคุณ

  1. ตอนนี้ติดตั้งตัวเชื่อมต่อ MySQL สำหรับ Python(ใช้ได้กับ MariaDB เช่นกัน) ด้วยคำสั่งต่อไปนี้:

คัดลอกทุบตี

pip install mysql-connector-python

Image 33: install MySQL connector for Python4. สร้างสคริปต์ Python อย่างง่ายเพื่อทดสอบการเชื่อมต่อฐานข้อมูลใช้โปรแกรมแก้ไขข้อความที่คุณต้องการและชื่อไฟล์ใดๆที่มี a.pyส่วนขยาย (เช่นvim test-db-connection.py).

ไพคัดลอก

import mysql.connector
from mysql.connector import errorcode
try:
  cnx = mysql.connector.connect(user='{user}', password='{password}',
                                host='{host}', database='{database}')
except mysql.connector.Error as err:
  if err.errno == errorcode.ER_ACCESS_DENIED_ERROR:
    print("Something is wrong with your user name or password")
  elif err.errno == errorcode.ER_BAD_DB_ERROR:
    print("Database does not exist")
  else:
    print(err)
else:
  print("You are connected!")
  cnx.close()

แทนที่ตัวยึดตำแหน่งด้วยค่าจากอีเมลสำหรับ Node MySQL/MariaDB/Percona ของคุณ:

  • {user}- ชื่อผู้ใช้ฐานข้อมูล
  • {password}- รหัสผ่านสำหรับผู้ใช้นั้น
  • {host}- ชื่อโฮสต์คอนเทนเนอร์ MySQL/MariaDB/Percona ของคุณ
  • {database}- ฐานข้อมูลเป้าหมาย (เช่นค่าเริ่มต้นmysqlฐานข้อมูล)

Image 34: Python DB connection codeสคริปต์เชื่อมต่อกับเซิร์ฟเวอร์ฐานข้อมูลที่ระบุด้วยข้อมูลประจำตัวที่ให้ไว้และพิมพ์ “คุณเชื่อมต่อแล้ว!” หากการเชื่อมต่อสำเร็จมิฉะนั้นจะพิมพ์คำอธิบายข้อผิดพลาด

  1. เรียกใช้สคริปต์:

คัดลอกทุบตี

python test-db-connection.py

Image 35: Python DB connection testถ้าYou are connected!ปรากฏในเทอร์มินัลการเชื่อมต่อสำเร็จคุณสามารถขยายสคริปต์เพื่อเรียกใช้แบบสอบถามและการดำเนินการฐานข้อมูลอื่นๆได้