MySQL的数据备份以及pymysql的使用
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了MySQL的数据备份以及pymysql的使用,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4987字,纯文字阅读大概需要8分钟。
内容图文
一、MySQL的数据备份
语法: # mysqldump -h 服务器 -u用户名 -p密码 数据库名 > 备份文件.sql # 示例: # 单库备份 mysqldump -uroot -p123 db1 > db1.sql mysqldump -uroot -p123 db1 table1 table2 > db1-table1-table2.sql #多库备份 mysqldump -uroot -p123 --databases db1 db2 mysql db3 > db1_db2_mysql_db3.sql #备份所有库 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模块
#安装 pip3 install pymysql
(1) 链接、执行sql、关闭(游标)
1 基本使用 # import pymysql # #mysql -h localhost -uroot -p123 # conn=pymysql.connect(host=‘localhost‘,user=‘root‘,password=‘‘,database=‘day47‘) # cursor=conn.cursor() #拿到游标,即mysql > # # sql=‘select * from user where id>1;‘ # rows=cursor.execute(sql) #拿到受影响的行数 # print(‘%s rows in set (0.00 sec)‘ %rows) # # cursor.close() # conn.close()
1.小练习
import pymysql user=input(‘用户名>>: ‘).strip() pwd=input(‘密码>>: ‘).strip() #链接,拿到游标 conn=pymysql.connect(host=‘localhost‘,user=‘root‘,password=‘‘,database=‘day47‘) cursor=conn.cursor() #拿到游标,即mysql >#执行sql sql=‘select * from user where user="%s" and password="%s";‘ %(user,pwd) print(sql) rows=cursor.execute(sql) #拿到受影响的行数 # print(‘%s rows in set (0.00 sec)‘ %rows) cursor.close() conn.close() if rows: print(‘登录成功‘) else: print(‘登录失败‘)
# 3:sql注入 import pymysql user=input(‘用户名>>: ‘).strip() pwd=input(‘密码>>: ‘).strip() conn=pymysql.connect(host=‘localhost‘,user=‘root‘,password=‘‘,database=‘day47‘) cursor=conn.cursor() sql=‘select * from user where user="%s" and password="%s";‘ %(user,pwd) print(sql) rows=cursor.execute(sql) cursor.close() conn.close() if rows: print(‘登录成功‘) else: print(‘登录失败‘)
3:解决sql注入 import pymysql user=input(‘用户名>>: ‘).strip() pwd=input(‘密码>>: ‘).strip() conn=pymysql.connect(host=‘localhost‘,user=‘root‘,password=‘‘,database=‘day47‘) cursor=conn.cursor() sql=‘select * from user where user=%s and password=%s;‘ rows=cursor.execute(sql,[user,pwd]) print(rows) cursor.close() conn.close() if rows: print(‘登录成功‘) else: print(‘登录失败‘)
4 增删改 import pymysql conn=pymysql.connect(host=‘localhost‘,user=‘root‘,password=‘‘,database=‘day47‘,charset=‘utf8‘) cursor=conn.cursor() sql=‘insert into user(user,password) values(%s,%s);‘ rows=cursor.execute(sql,(‘alex‘,‘123‘)) rows=cursor.executemany(sql,[(‘yuanhao‘,‘123‘),(‘laowu‘,‘123‘),(‘kgf‘,‘12323‘)]) print(‘%s row in set (0.00 sec)‘ %rows) conn.commit() cursor.close() conn.close()
5 查:fetchone,fetchmany,fetchall import pymysql conn=pymysql.connect(host=‘localhost‘,user=‘root‘,password=‘‘,database=‘day47‘,charset=‘utf8‘) cursor=conn.cursor() sql=‘select * from user;‘ rows=cursor.execute(sql) 查单条 res1=cursor.fetchone() res2=cursor.fetchone() res3=cursor.fetchone() print(res1[0]) print(res2) print(res3) 查多条 print(cursor.fetchmany(3)) print(cursor.fetchone()) 查所有 print(cursor.fetchall()) print(cursor.fetchone()) 光标的移动 print(cursor.fetchall()) cursor.scroll(1,mode=‘absolute‘) print(cursor.fetchone()) cursor.scroll(3,mode=‘absolute‘) print(cursor.fetchone()) print(cursor.fetchone()) print(cursor.fetchone()) cursor.scroll(-2,mode=‘relative‘) print(cursor.fetchone()) print(‘%s row in set (0.00 sec)‘ %rows) cursor.close() conn.close()
四、获取插入的最后一条数据的自增ID
原文:http://www.cnblogs.com/mengqingjian/p/7522374.html
内容总结
以上是互联网集市为您收集整理的MySQL的数据备份以及pymysql的使用全部内容,希望文章能够帮你解决MySQL的数据备份以及pymysql的使用所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。