一、MySQL的数据备份

  1. 语法:
  2. # mysqldump -h 服务器 -u用户名 -p密码 数据库名 > 备份文件.sql
  3.  
  4. #示例:
  5. #单库备份
  6. mysqldump -uroot -p123 db1 > db1.sql
  7. mysqldump -uroot -p123 db1 table1 table2 > db1-table1-table2.sql
  8.  
  9. #多库备份
  10. mysqldump -uroot -p123 --databases db1 db2 mysql db3 > db1_db2_mysql_db3.sql
  11.  
  12. #备份所有库
  13. mysqldump -uroot -p123 --all-databases > all.sql

MYsql的数据备份
     备份与恢复操作:

如:

       mysqldump - uroot day43 > E:\\day43.sql
    drop database day43; 删除原先的文件夹

   show databases; 查看全部的文件夹

  create database day43; 创建一个文件夹

 use day43; 切换到day43这个文件夹下
source E:\\day43.sql; 恢复数据

mysqldump - uroot day51 > D:\\day51.sql
1、登录MySQL恢复:
drop database day51;
create database day51;
source D:\\day51.sql;

2、不登录MySQL直接在外面恢复;
mysql -uroot day51 < D:\\day51.sql

(2)、恢复到指定的库中:
create database bak; 新建一个文件夹
use dak; 切换到dak这个文件夹下
mysql -uroot bak < D:\\day51.sql; 恢复数据

只备份一个表
mysqldump - uroot day51 deparment > D:\\day51-deparment.sql
MySQL 进数据库
create database bakl; 新建一个库
quit 退出
在mysql外面恢复
mysql -uroot bakl < D:\\day51-deparment.sql
nysql 进数据库
use bakl 切换到dakl这个文件夹下

直接在数据库外面查看
mysql -uroot -e "use bakl"
mysql -uroot -e "use bakl;show tables;"

 

备份多个库
mysqldump -uroot -e "show databases;" 查看全部的库

备份
mysqldump -uroot --databases db1 db2 db3 > E:\\db1-db2-db3.sql

MySQL         进数据库

删除原来的文件夹

quit 退出

在外面查看
mysql -uroot < E:\\db1-db2-db3.sql 恢复数据库
mysqldump -uroot -e "show databases;"

备份所有库
mysqldump -uroot --all-databases > E:\\all.sql

二、表的导出和导入

表的导出和导入

(show variables like '%secur%';查看选项)
导出
use day51; 切换到day51下面
show tables; 查看表
select * from userinfo; 查看表下的文件夹

select * from userinfo into outfile 'E:\\userinfo.txt' fields terminated by ','lines terminated by '\n'; 导出

导入
create table user(
id int primary key auto_increment,
name char(32),
age int,
deparment_id int);      建表

load data infile 'E:\\userinfo.txt'
into table user fields terminated by ','lines terminated by '\n'; 导入

三、 pymysql模块

  1. #安装
  2. pip3 install pymysql

(1) 链接、执行sql、关闭(游标)

  1. 1 基本使用
  2. # import pymysql
  3. # #mysql -h localhost -uroot -p123
  4. # conn=pymysql.connect(host='localhost',user='root',password='',database='day47')
  5. # cursor=conn.cursor() #拿到游标,即mysql >
  6. #
  7. # sql='select * from user where id>1;'
  8. # rows=cursor.execute(sql) #拿到受影响的行数
  9. # print('%s rows in set (0.00 sec)' %rows)
  10. #
  11. # cursor.close()
  12. # conn.close()
  1. 1.小练习
    import pymysql
  2. user=input('用户名>>: ').strip()
  3. pwd=input('密码>>: ').strip()
  4.  
  5. #链接,拿到游标
  6. conn=pymysql.connect(host='localhost',user='root',password='',database='day47')
  7. cursor=conn.cursor() #拿到游标,即mysql >
  8.  
  9. #执行sql
  10. sql='select * from user where user="%s" and password="%s";' %(user,pwd)
  11. print(sql)
  12. rows=cursor.execute(sql) #拿到受影响的行数
  13. # print('%s rows in set (0.00 sec)' %rows)
  14.  
  15. cursor.close()
  16. conn.close()
  17.  
  18. if rows:
  19. print('登录成功')
  20. else:
  21. print('登录失败')
  1. #3:sql注入
  2. import pymysql
  3. user=input('用户名>>: ').strip()
  4. pwd=input('密码>>: ').strip()
  5. conn=pymysql.connect(host='localhost',user='root',password='',database='day47')
  6. cursor=conn.cursor()
  7.  
  8. sql='select * from user where user="%s" and password="%s";' %(user,pwd)
  9. print(sql)
  10. rows=cursor.execute(sql)
  11. cursor.close()
  12. conn.close()
  13. if rows:
  14. print('登录成功')
  15. else:
  16. print('登录失败')
  1. 3:解决sql注入
  2. import pymysql
  3. user=input('用户名>>: ').strip()
  4. pwd=input('密码>>: ').strip()
  5. conn=pymysql.connect(host='localhost',user='root',password='',database='day47')
  6. cursor=conn.cursor()
  7.  
  8. sql='select * from user where user=%s and password=%s;'
  9. rows=cursor.execute(sql,[user,pwd])
  10. print(rows)
  11. cursor.close()
  12. conn.close()
  13. if rows:
  14. print('登录成功')
  15. else:
  16. print('登录失败')
  1. 4 增删改
  2. import pymysql
  3. conn=pymysql.connect(host='localhost',user='root',password='',database='day47',charset='utf8')
  4. cursor=conn.cursor()
  5.  
  6. sql='insert into user(user,password) values(%s,%s);'
  7. rows=cursor.execute(sql,('alex',''))
  8. rows=cursor.executemany(sql,[('yuanhao',''),('laowu',''),('kgf','')])
  9. print('%s row in set (0.00 sec)' %rows)
  10. conn.commit()
  11.  
  12. cursor.close()
  13. conn.close()
  1. 5 查:fetchone,fetchmany,fetchall
  2. import pymysql
  3. conn=pymysql.connect(host='localhost',user='root',password='',database='day47',charset='utf8')
  4. cursor=conn.cursor()
  5. sql='select * from user;'
  6. rows=cursor.execute(sql)
  7. 查单条
  8. res1=cursor.fetchone()
  9. res2=cursor.fetchone()
  10. res3=cursor.fetchone()
  11. print(res1[0])
  12. print(res2)
  13. print(res3)
  14.  
  15. 查多条
  16. print(cursor.fetchmany(3))
  17. print(cursor.fetchone())
  18.  
  19. 查所有
  20. print(cursor.fetchall())
  21. print(cursor.fetchone())
  22.  
  23. 光标的移动
  24. print(cursor.fetchall())
  25. cursor.scroll(1,mode='absolute')
  26. print(cursor.fetchone())
  27. cursor.scroll(3,mode='absolute')
  28. print(cursor.fetchone())
  29.  
  30. print(cursor.fetchone())
  31. print(cursor.fetchone())
  32. cursor.scroll(-2,mode='relative')
  33. print(cursor.fetchone())
  34.  
  35. print('%s row in set (0.00 sec)' %rows)
  36. cursor.close()
  37. conn.close()

四、获取插入的最后一条数据的自增ID

  1. import pymysql
  2. conn=pymysql.connect(host='localhost',user='root',password='123',database='egon')
  3. cursor=conn.cursor()
  4.  
  5. sql='insert into userinfo(name,password) values("xxx","123");'
  6. rows=cursor.execute(sql)
  7.  
  8. conn.commit()
  9. print(cursor.lastrowid) #在commit之前和之后都可以查看
  10. cursor.close()
  11. conn.close()

MySQL的数据备份以及pymysql的使用的更多相关文章

  1. MySQL之数据备份、pymysql模块

    一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 掌握: #1. 测试+链接 ...

  2. Python数据库MySQL之数据备份、pymysql模块

    一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 掌握: #1. 测试+链接 ...

  3. SQL学习笔记六之MySQL数据备份和pymysql模块

    mysql六:数据备份.pymysql模块   阅读目录 一 IDE工具介绍 二 MySQL数据备份 三 pymysql模块 一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测 ...

  4. MySQL 数据备份,Pymysql模块(Day47)

    阅读目录 一.IDE工具介绍 二.MySQL数据备份 三.Pymysql模块 一.IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https:/ ...

  5. mysql七:数据备份、pymysql模块

    阅读目录 一 IDE工具介绍 二 MySQL数据备份 三 pymysql模块 一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https:/ ...

  6. mysql六:数据备份、pymysql模块

    一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 掌握: #1. 测试+链接数据库 #2. 新建库 #3. 新建表,新增字段+类型+约束 #4. 设计表 ...

  7. mysql 数据备份。pymysql模块

    阅读目录 一 IDE工具介绍 二 MySQL数据备份 三 pymysql模块 一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https:/ ...

  8. 数据备份、pymysql模块

    阅读目录 一 IDE工具介绍 二 MySQL数据备份 三 pymysql模块 一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https:/ ...

  9. Mysql(六):数据备份、pymysql模块

    一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 掌握: #1. 测试+链接 ...

随机推荐

  1. python close()是假象,真正关闭Socket的方法

    背景: 工作中自己用python写了一个tcp工具,然后用while循环一直接收消息,并且打印出来.然后正常close发现设备并没有离线,然后用了临时的规避方案,发现其实是一直阻塞在recv()接收方 ...

  2. BOOT BIOS UEFI

    1. 什么是BOOT? BOOT其实是你按开机键之后,在电脑微软操作系统运行之前就自动运行的一段小程序.表象上就是windows引导画面之前那些黑屏蓝屏的英文那个阶段就是BOOT了.通过这段小程序,它 ...

  3. return 的返回值与结束功能

    前言:大家好~我是阿飞~在js中return是很重要的基础.一定要彻底掌握理解它哦.否则js学习到中后期很容易懵逼的+_+ 什么是return? 1.在js中return是一个表达式语句,如果后面什么 ...

  4. java web轻量级开发面试教程摘录,java web面试技巧汇总,如何准备Spring MVC方面的面试

    本内容摘自 java web轻量级开发面试教程 https://baike.baidu.com/item/Java%20Web%E8%BD%BB%E9%87%8F%E7%BA%A7%E5%BC%80% ...

  5. linux系统安装配置exim4(源码安装)

    一.Exim4概述 Exim是一个MTA(Mail Transfer Agent,邮件传输代理)服务器软件,该软件基于GPL协议开发,是一款开源软件.该软件主要运行于类UNIX系统.通常该软件会与Do ...

  6. 用xml画水平虚线和竖直虚线.md

    1.画水平虚线 直接建一个shape,设置stroke属性就行了,再将这个属性直接作为background的drawable属性引入就行了 注意在4.0以上的真机加一句 <?xml versio ...

  7. 常用Linux操作指令

    -------------------------------Linux目录------------------------------- /:根目录,一般根目录下只存放目录,在Linux下有且只有一 ...

  8. C# 异步编程2 EAP 异步程序开发

    在前面一篇博文记录了C# APM异步编程的知识,今天再来分享一下EAP(基于事件的异步编程模式)异步编程的知识.后面会继续奉上TPL任务并行库的知识,喜欢的朋友请持续关注哦. EAP异步编程算是C#对 ...

  9. 解决MVC模式文件下载附件中文名称乱码

    解决如下: 进行url编码:Server.UrlPathEncode(file.AttachmentName) return File(file.TempWorkPath, CommonTools.G ...

  10. mha 复制检查报错“There is no alive server. We can't do failover”

    安装mha所参考的文章: http://linzhijian.blog.51cto.com/1047212/1906434 http://www.cnblogs.com/xiaoboluo768/p/ ...