Other articles


  1. 如何备份postgresql数据库

    对于网站来说数据无疑是最重要的,而养成备份数据的习惯更加重要, 忽然想到一句经典台词

    曾经有一份数据摆在我的面前,
    可我没有备份,
    直到数据丢失后才后悔莫及,
    人世间最痛苦的事莫过于此,
    如果上天能给我一次再来一次的机会,
    我会对那份数据说五个字:我要备份你,
    如果非要在这份备份上加一个期限,我希望是每天!

    进入主题,这只是对数据进行简单的备份

    怎么备份数据

    shell脚本

    1
    2
    3
    4
    5
    6
    #!/bin/bash
    
    backup_time=`date +%Y%m%d`
    pg_dump articledb > /home/xxx/backup/article_$backup_time.sql
    # articledb是要备份的数据库名称
    echo "backup finished"
    

    保存为backup_db.sh
    注意
    xxx是数据库用户,并且是super权限
    可以这样

    $ sudo -i …
    read more

    There are comments.

  2. flask学习——数据库操作

    flask 作为后端数据库操作是必要的,现在记录一下一些flask数据库的相关操作, 我将使用三种方法操作数据库
    暂时使用较简单的sqlite作为例子

    相关环境的安装

    建议使用ve虚拟环境

    sudo pacman -S sqlite # archlinux
    sudo pip install virtualenv 
    # 在vertualenv环境下执行
    pip install Flask-SQLAlchemy Jinja2 SQLAlchemy
    

    最好是多看文档

    1.使用sqlite3模块API

    参考资料
    这是最简单的方法,不仅适用于flask,python的其他方面也一样适用,如爬虫之类

    连接数据库

    1
    2
    3
    4
    5
    6
    7
    #!/usr/bin/env python
    # -*- coding=UTF-8 -*-
    import sqlite3
    database = /path/test …
    read more

    There are comments.

  3. postgresql学习1——安装

    最近从sqlite转到postgresql,虽然postgresql比sqlite更加复杂

    archlinux

    参考资料

    $ sudo pacman -S postgresql
    $ sudo mkdir /var/lib/postgres/data #如果已存在则可以不建立
    $ sudo chmod -R postgres:postgres /var/lib/postgres/data
    由于我安装系统时没有生成en_US_UTF-8本地化文件(如果已经生成了的就
    不必再生成)
    $ sudo vim /etc/locale.gen #找到en_US_UTF-8,注释掉
    $ locale-gen
    
    然后运行
    $ sudo -i -u postgres #或者使用root账户su - postgres
    $ initdb --locale en_US.UTF-8 -E UTF8 -D …
    read more

    There are comments.

  4. postgresql学习2——使用

    postgresql的简单使用

    python

    参考资料

    安装psycopg2

    推荐使用venv虚拟环境

    pip install psycopg2
    

    这个API打开一个连接到PostgreSQL数据库。如果成功打开数据库时,它返回一个连接对象

    psycopg2.connect(database="testdb", user="postgres", password="cohondob", host="127.0.0.1", port="5432")
    

    该程序创建一个光标将用于整个数据库使用Python编程。

    connection.cursor()
    

    此例程执行SQL语句。可被参数化的SQL语句(即占位符,而不是SQL文字)。 psycopg2的模块支持占位符用%s标志

    cursor.execute(sql [, optional parameters])
    

    该程序执行SQL命令对所有参数序列或序列中的sql映射

    curosr.executemany(sql, seq_of_parameters)
    

    这个程序执行的存储数据库程序给定的名称。该程序预计为每一个参数,参数的顺序必须包含一个条目。

    curosr …
    read more

    There are comments.