Tag Archives: MySQL

Hibernate连接MySQL,中文乱码

主要是两个原因组成:

1、MySQL默认编码最好是UTF-8(GBK也行,但在Java中要再转)。
sudo vim /etc/mysql/my.cnf
在[mysql]下添加内容:
[mysqld]
skip-character-set-client-handshake=1
default-character-set=utf8
然后重启MySQL,如果有已经之前创建过的数据Schema,要Drop掉重来,才能是变成默认是utf8编码的。

2、Hibernate中DB连接[......]

继续阅读

MySQL中随机select记录

我有这个需求:

数据库中的uid离散分布不连续,需要随机select某一条记录。

1、最懒做法
select uid, uname from user order by RAND() limit 1
这个非常慢,因为几乎要遍历整个表。

2、用id随机范围。

其实如果我们能得到min(uid)和max(uid),然后随机这之间的某一个ID,再where >= 就可以了。

首先是获取min和max的uid:
select min(uid), max(uid)[......]

继续阅读

Python操作MySQL数据库

Python中居然没有内置操纵MySQL数据库的包。

Python中操作MySQL的第三方包很多,本文使用的是MySQL-python 1.2.3。

此接口是符合PEP 249的,即Python通用的数据库操作标准(类似JDBC)。

1、下载、安装
# Download
wget http://downloads.sourceforge.net/project/mysql-python/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz[......]

继续阅读

Linux下编译安装MySQL 5.5.23

实验室的Ubuntu 10.04上apt只能安装MySQL 5.1,忍不了,手动编译5.5。

折腾了一下午,5.5之后的源码安装各种坑爹啊,感谢这篇文章,《Ubuntu 10.04.2上编译安装MySQL 5.5.11》

1、下载
wget -O mysql-5.5.23.tar.gz http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.23.tar.gz/from/http://mysql.saudi.net.sa/
2[......]

继续阅读