zoukankan      html  css  js  c++  java
  • python3远程连接MySQL

    使用python3连接至远程的mysql服务器

    python3连接mysql使用pymysql,首先要去下载对应版本的。

    pip3 install pymysql
    
    1、导入模块:
    import pymysql 
    
    2、配置链接:
    conn=pymysql.connect(
        host='服务器IP',
        port=3306,
        
        #数据库登录账户
        user='root',
        
        #数据库登录密码
        passwd='123456',
        
        #要连接的数据库
        db='test'
    )
    
    host后为ip地址,若用本地mysql则填为localhost或127.0.0.1
    port 端口号,默认为3306
    user 数据库用户名
    passwd 数据库密码
    db 你所要用的数据了名称
    
    3、创建数据库操作对象:
    cur=conn.cursor()
    
    我们对数据库的常用操作都同个这个cursor对象来进行操作
    通过cur.execute()来执行语句;这里操作不在概述。
    写个我在用的时候出现的问题:
    在用python将数据插入到表中时,会遇到格式化插入如下:
    
    cur.execute(
        "INSERT INTO person(name,age,type,time,time2,setType,appearanceCount)"
        "VALUES ('%s',%d,'%s','%s','%s','%s',%d)"%(name,age,type,time,time2,setType,appearanceCount)
    )
    
    这里的name,type等等都是字符串类型的变量,age是int类型变量,但是再插入时若是直接  用%s,就会报错,加上引号就没问题.
    

    ** 另外操作远程数据库需要远程数据库对本地进行授权,若没有授权会出现以下提示:
    Host 'xxxxxx' is not allowed to connect to this MySQL server **

    MySQL数据库远程登陆授权

    1、

    在windows下运行输入mstsc,进行远程登录,或者通过xshell等工具远程登录管理服务器;
    

    2、

    远程登录后,输入mysql -u root -p   输入密码登录MySQL;
    

    3、

    创建远程登陆用户并授权
    
    grant all PRIVILEGES on test_db.* to root@'192.168.1.101'  identified by '123456';
    
    all PRIVILEGES 表示赋予所有的权限给指定用户,这里也可以替换为赋予某一具体的权限,例如select,insert,update,delete,create,drop 等,具体权限间用“,”半角逗号分隔。
    
    test_db.* 表示上面的权限是针对于哪个表的,test_db指的是数据库,后面的 * 表示对于所有的表,由此可以推理出:对于全部数据库的全部表授权为“*.*”,对于某一数据库的全部表授权为“数据库名.*”,对于某一数据库的某一表授权为“数据库名.表名”。
    
    root 表示你要给哪个用户授权,这个用户可以是存在的用户,也可以是不存在的用户。
    
    192.168.1.101   表示允许远程连接的 IP 地址,也就是你本地的ip地址。如果想不限制链接的 IP 则设置为“%”即可。
    
    123456 为用户的密码。
    

    4、

    flush privileges; 
    
    mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,如果还是无法访问,重新启动mysql服务器,来使新设置生效。
  • 相关阅读:
    2013年春季献礼 微软认证考试5.5折优惠,截止到5月25日
    邮件服务器脱离域灾难恢复
    How to: Hide the Ribbon in SharePoint 2010
    sharepoint2010如何根据用户登录名获取有权限的列表记录?
    sharepoint 2010的版本比较
    SharePoint2010文档归档策略(2)从放置库转移到自己定义的文档库
    如何设置sharepoint的栏目不在新增或修改页面显示?
    如何删除 SharePoint Workspace 2010 中的临时数据和永久数据
    Windows XP 默认蓝色桌面的 RGB
    System.Net.Socket Tcp 学习笔记(一)
  • 原文地址:https://www.cnblogs.com/sungeng/p/8253652.html
Copyright © 2011-2022 走看看