zoukankan      html  css  js  c++  java
  • mysql用户管理+pymysql模块

    mysql 用户管理
    Mysql 是一个tcp 服务器 用于接收用户端发送的指令,操作服务器上的文件数据
    在mysql自带的mysql数据库中有4个表用于用户管理的
    分别是: 优先级从高到低
    user -> db -> tables_priv -> columns_priv

    1.创建用户
    create user 用户名@"主机地址" identified by "密码";
    此处的主机地址 不是服务器地址 而是表示 这个账户可以在那台电脑上登录

    2. 授权
    语法: grant [权限的名称 select insert.... | all ] on 数据库.表名(*.* 表示所有库的表) to 用户名@主机地址 with grant option;
    with grant option 这个用户可以将他有的权限授予别的账户
    特点: 如果授权时 用户不存在 直接自动创建用户
    grant all on mydb1.* to testDBA@"%" identified by "123";

    3.删除权限
    revoke 权限的名称 on 数据库.表名 from 用户名@"主机名" ;
    update mysql.user set Grant_priv = "N" where user ="scote" and host = "localhost";

    4.刷新权限表
    flush privileges;

    5.删除用户
    drop user 用户名@"主机地址";


    pymysql的使用
    Connect链接用
    1.与数据库服务器建立链接
    2.获取游标对象 (用于发送和接收数据)
    3.用游标执行sql语句
    4.使用fetch方法来获取执行的结果
    5.关闭链接 先关游标 再关链接

    Cursor(游标)读写用
    1.创建游标 conn.cursor(指定查询结果的数据类型)
    2.excute 执行sql
    3.fetchone(当sql只有一条记录时) fetchmany(sql有多条并且需要指定条数) fetchall(多条)
    4.scroll 用于修改游标的当前位置


    commit(提交)和 rollback(撤销)
    注意: pymysql模块 默认是启用事务的 你的sql语句 如果不提交 相当于没有执行 也就是说 pymysql 默认不提交修改
    但是指的是对表中记录的操作不提交 像删库 删表 是无法撤销的

  • 相关阅读:
    Ubuntu的防火墙UFW
    使用Xshell连接Ubuntu
    Markdown 11种基本语法
    Git Push 避免用户名和密码方法
    "git rm" 和 "rm" 的区别
    无限级分类实现思路
    1. Git 克隆代码
    Git 笔记
    git 远程分支创建与推送
    ci 笔记
  • 原文地址:https://www.cnblogs.com/liangchengyang/p/9662753.html
Copyright © 2011-2022 走看看