python-day47--mysql数据备份与恢复

一、IDE工具介绍

掌握:
#1. 测试+链接数据库
#2. 新建库
#3. 新建表,新增字段+类型+约束
#4. 设计表:外键
#5. 新建查询
#6. 备份库/表

#注意:
批量加注释:ctrl+?键
批量去注释:ctrl+shift+?键

二、MySQL数据备份

#1. 物理备份: 直接复制数据库文件,适用于大型数据库环境。但不能恢复到异构系统中如Windows(要求平台一致)。
#2. 逻辑备份: 备份的是建表、建库、插入等操作所执行SQL语句,适用于中小型数据库,效率相对较低。
#3. 导出表: 将表导入到文本文件中。

1.使用mysqldump实现逻辑备份

#语法:
# mysqldump -h 服务器 -u用户名 -p密码 数据库名 > 备份文件.sql

#
#单库备份
mysqldump -uroot -p123 db1 > D:\\db1.sql
mysqldump -uroot -p123 db1 table1 table2 > D:\\db1-table1-table2.sql   #备份表

#多库备份
mysqldump -uroot -p123 --databases db1 db2 mysql db3 >D:\\ db1_db2_mysql_db3.sql

#备份所有库
mysqldump -uroot -p123 --all-databases > D:\\all.sql

2.恢复逻辑备份

#方法一:
mysql -uroot -p123 day47< D:\\day47.sql      (要提前有day47 库)

#方法二:
create database day47;
use day47;
source D:\\day47

3.在不进入数据库的情况下查看数据库内的数据

4.数据库迁移(扩展了解)

务必保证在相同版本之间迁移
# mysqldump -h 源IP -uroot -p123 --databases db1 | mysql -h 目标IP -uroot -p456

5.表的导出和导入

SELECT... INTO OUTFILE 导出文本文件
示例:
mysql> SELECT * FROM school.student1
INTO OUTFILE ‘student1.txt‘
FIELDS TERMINATED BY ‘,‘ //定义字段分隔符
OPTIONALLY ENCLOSED BY ‘”‘ //定义字符串使用什么符号括起来
LINES TERMINATED BY ‘\n‘ ; //定义换行符

mysql 命令导出文本文件
示例:
# mysql -u root -p123 -e ‘select * from student1.school‘ > /tmp/student1.txt
# mysql -u root -p123 --xml -e ‘select * from student1.school‘ > /tmp/student1.xml
# mysql -u root -p123 --html -e ‘select * from student1.school‘ > /tmp/student1.html

LOAD DATA INFILE 导入文本文件
mysql> DELETE FROM student1;
mysql> LOAD DATA INFILE ‘/tmp/student1.txt‘
INTO TABLE school.student1
FIELDS TERMINATED BY ‘,‘
OPTIONALLY ENCLOSED BY ‘”‘
LINES TERMINATED BY ‘\n‘;

时间: 2024-10-06 04:12:25

python-day47--mysql数据备份与恢复的相关文章

DBA成长之路---mysql数据备份与恢复

数据备份与恢复 备份方式: 物理备份:直接拷贝备份库和表对应的文件 cp -r /var/lib/mysql/mysql  /mysql.bak tar -zcvf /mysql.tar.gz  /varlib/mysql/mysql/* 逻辑备份:执行备份时,根据已有的库和表生成对应的sql命令,把生成的sql命令存储到指定的备份文件里 备份策略: 完全备份: 备份所有数据(表,库,服务器) 差异备份:备份自完全备份后所新产生(备份新产生的数据) 增量备份:备份自上一次备份后,所有新产生(备份

MySQL 数据备份与恢复

mysqldump 数据备份与恢复 mysqlbinlog 数据增量恢复

MySQL数据备份与恢复

**无论备份还是恢复,都要验证用户及权限** 一.数据备份 1.数据备份的备份方式   物理备份:cp.tar.tar+gzip  -> 兼容性差,目标地址空间大,耗时 系统自带物理备份工具mysqlhotcopy --> 备份时锁表 逻辑备份:备份产生数据的SQL语句  -> 兼容性好,占用空间小 系统自带完整备份工具Mysqldump(MySQL-client包产生) --> 备份时锁表 2.数据备份的备份策略   完整备份: 完全备份,把数据库服务器上的所有库所有表全部备份

十三、MySQL数据备份与恢复

13.1.数据备份 数据备份:目的用于恢复:必须对备份数据做恢复测试. 备份类型: 热备份:在线备份,读.写不受影响: 温备份:仅可以执行读操作: 冷备份:离线备份:读.写操作均中止: 物理备份和逻辑备份: 物理备份:复制数据文件:速度快 逻辑备份:将数据导出至文本文件中:速度慢.丢失浮点数精度,需要重建索引:方便使用文本处理工具直接对其处理.可移植能力强. 完全备份.增量备份和差异备份: 完全备份:备份全部数据: 差异备份:仅备份上次完全备份以来变化的数据: 增量备份:仅备份上次完全备份或增量

Mysql数据备份与恢复命令

转载:原文地址 一.备份常用操作基本命令 1.备份命令mysqldump格式 格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 –database 数据库名 > 文件名.sql 2.备份MySQL数据库为带删除表的格式 备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库. mysqldump --add-drop-table -uusername -ppassword -database databasename > backupfi

python 操作mysql数据中fetchone()和fetchall()

fetchone() : 返回单个的元组,也就是一条记录(row),如果没有结果 则返回 None fetchall() : 返回多个元组,即返回多个记录(rows),如果没有结果 则返回 () 需要注明:在MySQL中是NULL,而在Python中则是None 原文地址:https://www.cnblogs.com/LewisAAA/p/9250741.html

Python下Mysql数据连接池——单例

# coding:utf-8 import threading import pymysql from DBUtils.PooledDB import PooledDB from app.common.file_config import get_config class DbPool(object): _instance_lock = threading.Lock() def __init__(self): if not hasattr(DbPool, "pool"): DbPool

Python读取mysql数据,转为DataFrame格式并根据原TABLE中的COLUMNS指定columns,index

(此处创建连接和游标代码省略) sql1 = "SELECT * FROM 表名称" # SQL语句1 cursor1.execute(sql1) # 执行SQL语句1 read1=list(cursor1.fetchall()) # 读取结果1 sql2="SHOW FULL COLUMNS FROM 表名称" # SQL语句2 cursor1.execute(sql2) # 执行SQL语句2 read2=list(cursor1.fetchall()) # 读取

Python操作mysql之插入数据

之前有写过一篇python查询mysql数据的文章,今天写通过python插入数据到mysql数据库. 1.先建库,建表,建用户 mysql> create database top_ten; mysql> use top_ten mysql> create table log (id int PRIMARY KEY  AUTO_INCREMENT, ip char(20), url char(30), status int, total int) charset=utf8; mysql

Python 管理 MySQL

Python 连接 MySQL Python 创建 MySQL 表 Python 增加 MySQL 数据 Python 删除 MySQL 数据 Python 查询 MySQL 数据 Python 修改 MySQL 数据 原文地址:https://www.cnblogs.com/pzk7788/p/10404397.html