mysql导入sql文件

mysqldump参数详细说明

别说谁变了你拦得住时间么 提交于 2019-11-29 22:33:35
参数 参数说明 --all-databases , -A 导出全部数据库。 mysqldump -uroot -p --all-databases --all-tablespaces , -Y 导出全部表空间。 mysqldump -uroot -p --all-databases --all-tablespaces --no-tablespaces , -y 不导出任何表空间信息。 mysqldump -uroot -p --all-databases --no-tablespaces --add-drop-database 每个数据库创建之前添加drop数据库语句。 mysqldump -uroot -p --all-databases --add-drop-database --add-drop-table 每个数据表创建之前添加drop数据表语句。(默认为打开状态,使用--skip-add-drop-table取消选项) mysqldump -uroot -p --all-databases (默认添加drop语句) mysqldump -uroot -p --all-databases –skip-add-drop-table (取消drop语句) --add-locks 在每个表导出之前增加LOCK TABLES并且之后UNLOCK TABLE。(默认为打开状态,使用-

如何导出和导入mysql数据(数据迁移)

梦想的初衷 提交于 2019-11-29 22:33:19
这是其中一种方法,非常简单 1. 导出数据库数据 mysqldump -uroot -p dp_db > dumpout.sql 其中 root是账户名 dp_db是需要导出的数据库名称 dumpout.sql存储导出的数据 2. 将导出的数据dumpout.sql放到你的目标机器上(如果是远程目标机器的话,直接将dunmpout.sql copy到目标机器就行)。这里假设cp到主目录下~/ 3. 在目标机器的数据库里建立新数据库,这里建立名为dp_db_bak的数据库 mysql> create database dp_db_bak 4. 向dp_db_bak数据库导入数据 mysql -uroot -p dp_db_bak < ~/dumpout.sql 其中 root是账户名 db_db_bak是新数据库 ~/dumpout.sql是第一步导出的数据 P.S. 如果在导入导出数据的时候遇到文件太大异常退出的情况,可使用split/cat来进行文件的分割和合并 mysqldump -uroot -p dp_db | split -b 10m - tempfile cat all_tempfile > targetfile 其他方法: Mysql source命令在导入大数据时显得非常有用。虽然Mysql Administrator软件也不错

mysql数据库优化概述详解

十年热恋 提交于 2019-11-29 18:05:09
mysql查询的过程图 为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 如何优化 设计数据库时:数据库表、字段的设计,存储引擎 利用好MySQL自身提供的功能,如索引等 横向扩展:MySQL集群、负载均衡、读写分离 SQL语句的优化(收效甚微) 一、字段设计阶段 选取最适用的字段属性 1. 字段的宽度设得尽可能小 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽可能小。 2. 尽量把字段设置为NOTNULL 在可能的情况下,应该尽量把字段设置为NOTNULL,这样在将来执行查询的时候,数据库不用去比较NULL值。 3. 确定数据定义为ENUM类型 对于某些文本字段,例如“省份”或者“性别”,我们可以将它们定义为ENUM类型。因为在MySQL中,ENUM类型被当作数值型数据来处理,而数值型数据被处理起来的速度要比文本类型快得多。这样,我们又可以提高数据库的性能。 4. 单表字段不宜过多,可以预留字段 满足业务需求的前提下二三是个字段就是极限了,可以预留字段便于扩展。 遵循数据表的设计规范 1. 第一范式(1NF) 字段值具有原子性

A4-07-01: MySQL导出文本文件和导入文本文件

时光总嘲笑我的痴心妄想 提交于 2019-11-29 15:02:16
有时经常会需要将MySQL数据库中的数据导出到外部存储文件中,MySQL数据库中的数据库可以导出成sql文本文件、xml文件或者html文件以及txt文本文件,同样这些导出文件也可以导入到MySQL数据库中。 导出文本文件: select into outfile mysqldump命令 mysql命令 导入文本文件: load data infile mysqlimport 参考: 运维那点事: 01-08. MySQL表导入导出 骏马金龙: MariaDB/MySQL备份和恢复(二):数据导入、导出 来源: https://www.cnblogs.com/zhuntidaoren/p/9556075.html

mysql 命令行导入导出.sql文件

末鹿安然 提交于 2019-11-29 12:39:56
window下 1.导出整个数据库 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u dbuser -p dbname > dbname.sql 2.导出一个表 mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名 mysqldump -u dbuser -p dbname users> dbname_users.sql 3.导出一个数据库结构 mysqldump -u dbuser -p -d --add-drop-table dbname >d:/dbname_db.sql -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table 4.导入数据库 常用source 命令 进入mysql数据库控制台,如 mysql -u root -p mysql>use 数据库 然后使用source命令,后面参数为脚本文件(如这里用到的.sql) mysql>source d:/dbname.sql 1. 导入数据到数据库 mysql -uroot -D数据库名 1. 导入数据到数据库中得某个表 mysql -uroot -D数据库名 表名 D:\APMServ5.2.6\MySQL5.1\bin>mysqldump -u root -p erp lightinthebox_tags

专职DBA-MySQL日志管理2

让人想犯罪 __ 提交于 2019-11-29 12:35:21
专职DBA-MySQL日志管理2 [root@db01 ~]# mysqld --defaults-file=/data/mysql/3306/my.cnf & [root@db01 ~]# ps -ef | grep mysql [root@db01 ~]# netstat -lnp | grep mysql [root@db01 ~]# mysql -S /data/mysql/3306/mysql.sock -p 错误日志(log_error): 文本形式记录MySQL启动,关闭,日常运行过程中所有状态信息,警告,错误。 错误日志配置,默认就是开启的:/数据目录下/hostname.err 手工设定: mysql> select @@log_error; +----------------------------+ | @@log_error | +----------------------------+ | /data/mysql/3306/error.log | +----------------------------+ 1 row in set (0.01 sec) mysql> show global variables like "log_error"; [root@db01 ~]# grep "log_error" /data/mysql/3306/my

必会的MySQL操作方法

独自空忆成欢 提交于 2019-11-29 11:53:56
远程登陆数据库: CMD命令如下。 mysql -h IP地址 -P 端口 -u 用户名 -p密码 (-p和密码之间,不能有空格) mysql -h 192.168.0.102 -P 3306 -u user -p123456 一、备份常用操作基本命令 1、备份命令mysqldump格式 格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 –database 数据库名 > 文件名.sql 2、备份MySQL数据库为带删除表的格式 备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。 mysqldump –add-drop-table -uusername -ppassword -database databasename > backupfile.sql 3、直接将MySQL数据库压缩备份 mysqldump -hhostname -uusername -ppassword -database databasename | gzip > backupfile.sql.gz 4、备份MySQL数据库某个(些)表 mysqldump -hhostname -uusername -ppassword databasename specific_table1 specific_table2 > backupfile.sql 5

Python3 操作Mysql数据库

你。 提交于 2019-11-29 07:56:31
Pymysql介绍 PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,而Python2中则使用mysqldb。 PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。 通用步骤: 1.引入模块 2.获取与数据库的连接 3.执行SQL语句和存储过程 4.关闭数据库连接 PyMySQL 安装 1.打开cmd命令 cd C:\Users\Administrator\AppData\Local\Programs\Python\Python37\Scripts #切换目录 pip install pymysql 数据库连接 import pymysql #模块导入 #打开数据库连接 db = pymysql.connect( host='数据库ip', user='用户名, passwd='密码', db='数据库名', port=3306, charset='utf8' ) #使用 cursor() 方法创建一个游标对象 cursor cursor = db.cursor() #使用 execute() 方法执行 SQL 查询 cursor.execute("SELECT VERSION()") #使用 fetchone() 方法获取单条数据. data = cursor

Mysql主从复制

僤鯓⒐⒋嵵緔 提交于 2019-11-29 07:54:24
1.mysql基本命令 mysql基本初始配置 # 1.启动mysql systemctl start/stop /restart/status/ mariadb # 2.linux客户端连接自己 mysql -u root -p -h 127.0.0.1 # 3.远程链接mysql服务端 mysql -u root -p -h 192.168.11.37 # 4.修改mysql密码 MariaDB[(none)]> set password = PASSWORD('新密码'); # 5.创建mysql用户 "%" 表示所有ip地址 MariaDB[(none)]> create user 用户名@"%" identified by '密码'; # 6.查询mysql库中的用户信息 MariaDB[(none)]> use mysql; MariaDB[(none)]> select host,user,password from user; 授权配置 # 7. 授权语句 mysql使用grant命令对账户进行授权,grant命令常见格式如下 grant 权限 on 数据库.表名 to 账户@主机名 # 对特定数据库中的特定表授权 grant 权限 on 数据库.* to 账户@主机名   # 对特定数据库中的所有表给与授权 grant 权限1,权限2,权限3 on *.* to

详解MySQL主从复制实战 - 基于GTID的复制

ε祈祈猫儿з 提交于 2019-11-29 07:50:59
基于GTID的复制 简介 基于GTID的复制是MySQL 5.6后新增的复制方式. GTID (global transaction identifier) 即全局事务ID, 保证了在每个在主库上提交的事务在集群中有一个唯一的ID。 在原来基于日志的复制中, 从库需要告知主库要从哪个偏移量进行增量同步, 如果指定错误会造成数据的遗漏, 从而造成数据的不一致. 而基于GTID的复制中, 从库会告知主库已经执行的事务的GTID的值, 然后主库会将所有未执行的事务的GTID的列表返回给从库. 并且可以保证同一个事务只在指定的从库执行一次。 GTID开启配置如下: SHOW VARIABLES LIKE '%GTID%'; 结果: 实战 1、在主库上建立复制账户并授予权限 基于GTID的复制会自动地将没有在从库执行的事务重放, 所以不要在其他从库上建立相同的账号. 如果建立了相同的账户, 有可能造成复制链路的错误. mysql> create user 'repl'@'172.%' identified by '123456'; 注意在生产上的密码必须依照相关规范以达到一定的密码强度, 并且规定在从库上的特定网段上才能访问主库. mysql> grant replication slave on *.* to 'repl'@'172.%'; 查看用户 mysql> select user,