percona-toolkit 是一组高级命令行工具的集合, 用来执行各种复杂和麻烦的 MySQL 操作。
下面记录一下在 CentOS 下如何通过 rpm 安装 percona-toolkit:
安装依赖
yum install perl perl-IO-Socket-SSL perl-Time-HiRes
下载 rpm 包
wget percona.com/get/percona-toolkit.rpm
安装 rpm 包
rpm -ivh percona-toolkit-*.rpm
---EOF---
more ...默认情况下上传的文件都是按原始编码进行保存的,用户上传什么编码的文件就保存什么编码的文件。
下面将举例说明如何通过自定义 Model Field 的方式将文件的编码改为 UTF-8。
假设有个文件: app/fields.py
import chardet
from django.db import models
from south.modelsinspector import add_introspection_rules
class UTF8TextFileField(models.FileField):
"""上传的文本文件将按 utf8 编码保存"""
def clean(self, *args, **kwargs):
uploaded_file = super(UTF8TextFileField, self).clean(*args, **kwargs)
content_raw = uploaded_file.file.read()
# 猜测原始文件编码
encoding = chardet.detect ...