SQLite数据量比较小的时候确实蛮不错的,不过网站的话MySQL还是比较好。SQLAlchemy 数据库引擎能保证工程可以快速切换数据库源。 只要切换一下数据库链接就能完成切换,狗书上如是说。
既然说那么简单,开始动工切换数据库之旅!
环境:
debian 7.5 (x86)
python 3.5
实例工程是OReilly出版的《flask web 开发:基于Python的Web应用开发实战》。书中的环境是应该是以python2为基础的,python3也能正常使用。
按照书中的描述只要把数据库链接替换。
一、替换数据库链接
FLask-SQLAlchemy数据库URL
数据库引擎
URL
MySQL
mysql://username:password@hostname/database
Postgres
postgresql://username:password@hostname/database
SQLite(Unix)
sqlite:absolute/path/to/database
SQLite(Windows)
sqlite:///c:/absolute/path/to/database
改:
MySQL(py3+pymysql)
mysql+pymysql://moguf:moguf@localhost/icalc?charset=utf8
看上去确实简单。只要把URL改成MySQL的就OK了,实际Python3 会有些问题。要使用表中pymysql的连接样式。
二、安装部署MySQL
安装数据库
数据库直接使用系统提供的系统提供的版本(5.5)。
$ sudo apt-get install mysql-server
安装过程中会让你输入root密码,一路向下。
完成后可以使用 mysql --version 查看安装的版本信息。如下面的。
moguf@debian32:~$ mysql --version
mysql Ver 14.14 Distrib 5.5.49, for debian-linux-gnu (i686) using readline 6.3
创建数据库
创建一个新的数据库icalc,用来保存站点数据。
moguf@debian32:~$ mysql -uroot -p
mysql> create database icalc character set