iT邦幫忙

DAY 20
5

MySQL漫談,由使用Python撰寫之MySQL工具程式出發系列 第 20

MySQL漫談,由使用Python撰寫之MySQL工具程式出發(20)

今天介紹MySQL的小技巧與Python連接MysQL的方式.
首先是 --tee 參數, 可以指定一個文字檔,會將我們操作的
過程紀錄下來,方便後續追蹤及製作文件.
範例如下:

$ mysql -u myperf -p myperf --tee=tee.txt
Logging to file 'tee.txt'
Enter password: 

再來是設定提示符號,以方便我們操作時了解目前的資訊,
例如目前使用哪個資料庫,登入的使用者等等.
我們把 tee 的內容展示一下,就可以看到剛剛操作時,
輸入的指令與MySQL回應的內容.

$ cat tee.txt
...刪除登入時MySQL的一些文字..

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

myperf@[myperf]>PROMPT \u@\h[\d][\D]>
PROMPT set to '\u@\h[\d][\D]>'
myperf@localhost[myperf][Tue Oct 23 17:18:12 2012]>SELECT VERSION();
+-----------------------------+
| VERSION()                   |
+-----------------------------+
| 5.5.24-0ubuntu0.12.04.1-log |
+-----------------------------+
1 row in set (0.00 sec)

myperf@localhost[myperf][Tue Oct 23 17:18:25 2012]>quit

可以看到我將提示符號變化了,除了原本的user, database,增加了host與時間資訊.
分別是用以下參數
\u 代表user
\h 代表host
\d 代表database
\D 代表時間

也許有人會問時間加上去的目的為何?
設想一下情境,當你在公司有許多MySQL在運作,這時候登入哪台?何時做了哪些操作?
最好都能夠有詳實的紀錄,以利後續的稽考;後續新人教育訓練,現成就有很好的實例.
提示符號也可以在設定檔裡設定.

接著來看看Python連接MySQL的方法.
這是一個簡單的連接範例.

#!/usr/bin/env python
# ----------------------
# Python MySQL Connector

import mysql.connector

config = {
    'user' : 'myperf',
    'password' : 'myperf',
    'host' : '127.0.0.1',
    'database' : 'myperf',
}

try:
    cnx = mysql.connector.connect(**config)
except mysql.connector.Error as err:
    print 'Something went wrong-> %s' % format(err)
else:
    
    cnx.close()

Python 有許多模組都可以連接到MySQL,上面的範例是用 Connector/Python.


上一篇
MySQL漫談,由使用Python撰寫之MySQL工具程式出發(19)
下一篇
MySQL漫談,由使用Python撰寫之MySQL工具程式出發(21)
系列文
MySQL漫談,由使用Python撰寫之MySQL工具程式出發30

1 則留言

我要留言

立即登入留言