• python之mysql(一)


    1.安装客户端

    mysql数据库现在已经成为市场占有率最高的数据库,子开发过程中,很多情况下我们都需要操作
    mysql,所以对于python操作mysql的了解是必不可少的.
    python标准数据库接口为Python DB-API,Python DB-API为开发人员提供了数据库应用
    编程接口,参考地址:https://wiki.python.org/moin/Databaseinterfaces,你可以查看python
    支持数据库的详细列表。不同的数据库需要下载不同的DB API模块.DB-API是一个规范,
    它定义了一系列必须的对象和数据库存取方式,以便为各种各样的底层数据库系统和
    多种多样的数据库接口程序提供一致的访问接口.


    Python的DB-API,为大多数的数据库实现了接口,使用它连接各数据库后,就可以用相同
    的方式操作各数据库.

    Python DB-API使用流程:
    1.引入API模块
    2.获取与数据库的连接.
    3.执行SQL语句和存储过程.
    4.关闭数据库连接

    MySQLdb是用于Python链接Mysql数据库的接口,它实现了Python数据库API规范V2.0,基于
    MySQL C API上建立的.

    如果是windows系统,登录https://pypi.python.org/pypi/MySQL-python/1.2.5找到.exe结尾的包,
    http://www.codegood.com/archives/129
    下载安装就好了,然后在cmd下执行:
    python
    import MySQLdb

    需要把路径添加到环境变量中;


    linux
    yum install -y python-devel
    yum install -y mysql-devel
    yum install -y gcc
    unzip MySQL-python-1.2.5.zip
    cd MySQL-python-1.2.5
    python setup.py build
    python setup.py install

    python
    import MySQLdb

    在linux服务器上安装mysql-server,我安装的是mysql5.6
    yum install -y mysql-community-server-5.6.34-2.el7.x86_64
    centos7版本以前:service mysqld-restart
    centos7版本以后:systemctl restart mysql.service
    mysql进行授权
    mysql
    create databases python
    grant all privileges on *.* 'xiang'@'%' identified by '123456';
    flush privileges

    解释:
    Mysql命令进入mysql数据库,create 用来创建库名python,
    grant 进行授权,授权xiang用户对所有服务器,所有库,所有表都有权限;

     2.数据库连接

    MySQLdb提供了connect方法用来和数据库建立连接,接收数个参数,返回连接对象:
    首先子mysql建立python库:create database python
    conn=MySQLdb.connect(host="192.168.48.128",user="xiang",passwd="123456",db="python",charset="utf8")

    比较常用的参数:
    host:数据库主机名,默认是用本地主机;
    user:数据库登录名,默认是当前用户;
    passwd:数据库登录的密码,默认是空;
    db:要使用的数据库名,没有默认值;
    port:MySQL服务使用的TCP端口,默认是3306,数字类型;
    charset:数据库编码;

    更多关于参数的信息可以查这里:http://mysql-python.sourceforge.net/MySQLdb.html

    3.mysql事务

    MySQL事务主要用于处理操作量大,复杂度高的数据。比如,你操作一个数据库,
    公司的一个员工离职了,你要做数据库中删除他的资料,也要删除该人员相关的,
    比如邮箱,个人资产等。这些数据库操作语言就构成了一个事务。
    在MySQL中只有使用了Innodb数据库引擎的数据库或表才支持事务,所以很多情况下我们都使用
    innodb引擎.
    事务处理可以用来维护数据库的完整性,保证成批的SQL语句要么全部执行,要么全部不执行。
    一般来说,事务是必须满足4个条件(ACID):Atomicity(原子性),Consistency(稳定性),
    Isolation(隔离性),Durability(可靠性).

    1.事务的原子性:一组事务,要么成功,要么撤回;
    2.稳定性:有非法数据(外键约束之类),事务撤回;
    3.隔离性:事务独立运行。一个事务处理后的结果,影响了其他事务,那么其他
    事务会撤回.事务的100%隔离,需要牺牲速度;
    4.可靠性:软,硬件崩溃后,Innodb数据表驱动会利用日志文件重构修改.
    可靠性和高速度不可兼得,innodb_flush_log_at_trx_commit选项,决定什么时候把
    事务保存到日志里.

    而mysql子默认的情况下,把每一个select,insert,update,delete等作为一个事务的,
    登录mysql服务器,进入mysql,执行以下命令:
    show variables like 'auto%';

  • 相关阅读:
    最详细的Vue Hello World应用开发步骤
    SAP Fiori + Vue = ?
    golang--连接redis数据库并进行增删查改
    golang--redis基本介绍
    golang--海量用户即时通讯系统
    (四十六)golang--网络编程(简易的聊天系统)
    动态规划--矿工挖矿
    (四十五)golang--反射
    动态规划--爬楼梯问题(入门)
    (四十四)golang--协程(goroutine)和管道(channel)相结合实例
  • 原文地址:https://www.cnblogs.com/awenxianliao/p/7871095.html
Copyright © 2020-2023  润新知