今天介紹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.