MySQL(五)


MySQL基础操作请见 enginelong的博客

数据库备份和用户管理

数据表的复制
  • 表可以根据实际需求复制数据
  • 复制表时不会把KEY属性一起复制
create table 表名 select 查询;
数据备份
  • 备份命令格式
mysqldump -u 用户名 -p 源库名 > (数据备份存储路径)/备份数据库名.sql
  • 恢复命令格式
mysql -u root -p 目标库名 < (备份数据存储路径)/备份数据库名.sql
用户权限管理
  • 开启MySQL远成连接
更改配置文件,重启服务!
1.cd /etc/mysql/mysql.conf.d
2.sudo vi mysqld.cnf  找到43行左右,加 # 注释
   # bind-address = 127.0.0.1
   
3.保存退出
4.sudo service mysql restart
5.进入mysql修改用户表host值 
  use mysql;
  update user set host='%' where user='root';
6.刷新权限
  flush privileges;
  • 添加权限用户
1. 用root用户登录mysql
   mysql -u root -p
2. 添加用户 % 表示自动选择可用IP
   CREATE USER 'username'@'host' IDENTIFIED BY 'password';
3. 权限管理

   # 增加权限
   grant 权限列表 on 库.表 to "用户名"@"%" identified by "密码" with grant option;
   
   # 删除权限
   revoke insert,update,select on 库.表 from 'user'@'%';
   
4. 刷新权限
   flush privileges;
5. 删除用户
   drop user "用户名"@"%"
  • 权限列表
all privileges 、select 、insert ,update,delete,alter等。
库.表 : *.* 代表所有库的所有表

python操作MySQL

python可以通过第三方库pymysql操作MySQL数据库

安装pymysql
sudo pip3 install pymysql
pymysql基础使用
  • 建立数据库连接
db = pymysql.connect(参数列表)
功能: 链接数据库

host :主机地址,本地 localhost
port :端口号,MySQL默认3306端口
user :用户名
password :密码
database :库
charset :编码方式,推荐使用 utf8
  • 创建数据库游标对象
cur = db.cursor() 
功能: 创建游标
返回值:返回游标对象,用于执行具体SQL命令
  • 游标方法
cur.execute(sql,list_) 
功能: 执行SQL命令
参数: sql sql语句
      list_  列表,用于给sql语句传递参量
      
cur.executemany(sql命令,list_)
功能: 多次执行SQL命令,执行次数由列表中元组数量决定
参数: sql sql语句
      list_  列表中包含元组 每个元组用于给sql语句传递参量,一般用于写操作。
  • 从数据库获取执行SQL语句后的结果
cur.fetchone() 获取查询结果集的第一条数据,查找到返回一个元组否则返回None
cur.fetchmany(n) 获取前n条查找到的记录,返回结果为元组嵌套元组, ((记录1),(记录2)),查询不到内容返回空元组。
cur.fetchall() 获取所有查找到的记录,返回结果形式同上。
  • 将数据提交到数据库
db.commit() 提交到数据库执行
  • 回滚操作
db.rollback() 回滚,用于当commit()出错是回复到原来的数据形态
  • 关闭游标对象然后关闭数据库连接
cur.close() 关闭游标对象
db.close() 关闭数据库连接

OK,MySQL暂时复习到这里吧!!!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值