mysql用户管理和pymysql模块

一:mysql用户管理

             mysql是一个tcp的服务器,用于操作服务器上的文件数据,接收用户端发送的指令,而接收指令时就

 需要考虑安全问题。

            在mysql自带的数据库中有4个表是用于用户管理的,分别是user,db,tables_priv,columns_priv,其

 优先级分别是从高到低。

             1:创建用户的语句:

                  语法:create user  用户名@"主机地址"  identified by "密码";

                          这里的主机地址不是服务器地址,而是表示这个账户可以在哪台电脑上登录。

             2:授权的语句:

                  语法:grant [权限的名称 select insert.... | all ] on 数据库.表名 to 用户名@"主机地址";

             3:授权的语句之授权给别的账户:

                  语法:grant [权限的名称 select insert.... | all ] on 数据库.表名  to 用户名@"主机地址" with grant option;

                            with grant option 这个用户可以将他有的权限授予给别的账户,如果授权时用户不存在,则会直接自动创建用户。

             4:删除权限:

                  语法:revoke 权限的名称 on 数据库.表名 from 用户名@"主机名";

             5:刷新/重载权限表:

                  语法:flush privileges;

             6:删除用户:

                  语法:drop user 用户名@"主机地址";

 

二:pymysql模块:python编写的mysql客户端

                       pymysql模块使用步骤:

                       1:首先与数据库服务器建立链接

                       2:获取游标对象     (用于发送和接收数据)

                       3:用游标对象执行sql语句

                       4:使用fetch方法来获取执行的结果

                       5:关闭链接     (先关游标,再关链接)

                       游标的常用方法:

                       1:创建游标:conn.cursor   (指定查询结果的数据类型)

                       2:execute   (用于执行sql)

                       3:fetchone   (当sql只有一条记录时)  

                            fetchmany   (sql有多条并且需要指定条数)  

                            fetchall   (多条)

                       4:scroll   (用于修改游标的当前位置)

                       注意:pymysql  默认不提交修改  这里的修改指的是对表中记录的操作不提交,但是像删库,删表是无法撤销的。

 

 

 

 

 

 

 

 

 

 

 

 

            

posted @ 2018-09-17 19:28  &nbsp  阅读(162)  评论(0编辑  收藏  举报