澳门新萄京django migrate冲突与常用mysql命令

澳门新萄京django migrate冲突与常用mysql命令

一.概述

    mysqldump顾客端工具是用来备份数据库或在区别数据库之间打开数量迁移。备份内容富含创设表或装载表的sql语句。mysqldump近年来是mysql中最常用的备份工具。
  三种方法来调用mysqldump,命令如下:
澳门新萄京 1
  上海体育地方第后生可畏种是备份单个数据库也许库中某些数据表(从备份形式上,比sqlserver要灵活一些,固然sql
server有文件组备份卡塔 尔(英语:State of Qatar)。第三种是备份钦命的五个要么五个数据库。第二种是备份全体数据库。
  1.连接导出,上边将test数据库导出为test.txt文件,导出地点在data目录下

[root@hsr data]# /usr/local/mysql/bin/mysqldump -uroot -p test > test.txt

澳门新萄京 2澳门新萄京 3

  上图展现: 导出到test.txt文件里,
数占有几部份sql语句,包括:(1)有咬定表存在删除,(2)导出表结交涉表数据,(3)导前加table
write锁,导完释放。通过上边帮忙命令能够看看默许设置。

 [root@hsr data]# /usr/local/mysql/bin/mysqldump --help

澳门新萄京 4  2.
输出内容选取

-n, –no-create-db

不包含数据库的创建语句

-t, –no-create-info

不包含数据表的创建语句

-d,–no-data

不包含数据

    下边演示导出test库的a表,不包括数据:

[root@hsr data]# /usr/local/mysql/bin/mysqldump -uroot -p -d  test a > a.txt

澳门新萄京 5

    上图体现,使用more 查看a.txt,内容独有表结构。
  3. 用到
–compact选项使得结果简洁,不满含暗中同意选项中的各个注释,上边照旧演示a表:

[root@hsr data]# /usr/local/mysql/bin/mysqldump -uroot -p --compact  test a > a.txt

澳门新萄京 6

  4. 用到-c –complete-insert 选项,使insert语句包罗字段名称

[root@hsr data]# /usr/local/mysql/bin/mysqldump -uroot -p -c --complete-insert  test b > b.txt

澳门新萄京 7

  5. 运用-T选项将钦定数量表中的数据备份为单独的数码文本和建表sql,
多个文件。

     [root@hsr data]# midir bak
        [root@hsr data]# /usr/local/mysql/bin/mysqldump -uroot -p   test b -T ./bak
        Enter password: 
        mysqldump: Got error: 1290: The MySQL server is running with the --secure-file-priv option so it cannot execute 
                      this statement when executing 'SELECT INTO OUTFILE'

 --上面的语句报错,查找错误信息中的字段设置
SHOW VARIABLES LIKE '%secure%';

澳门新萄京 8

    secure-file-priv参数是用来界定LOAD DATA, SELECT … OUTFILE, and
LOAD_FILE()传到哪个内定目录的。

                   (1) 当secure_file_priv的值为null ,表示节制mysqld
不容许导入|导出。

                   (2) 当secure_file_priv的值为/tmp/ ,表示约束mysqld
的导入|导出只可以发出在/tmp/目录下。

                   (3
)当secure_file_priv的值未有具体值时,表示不对mysqld
的导入|导出做限制。

    上面来设置my.cnf文件,加上导入地点,地方在/tmp 目录下,如下图:
澳门新萄京 9澳门新萄京 10

-- 再次导出,导出路径在/tmp下
[root@hsr data]#  /usr/local/mysql/bin/mysqldump -uroot -p   test b -T /tmp

澳门新萄京 11

    使用more 查看文件,b.sql中含有了表框架结构, b.txt包括数据。
澳门新萄京 12

澳门新萄京 13

   6.  字符集选项

    –default-character-set=name
选项能够安装导出的顾客端字符集。那几个选项很关键,假设客商端字符集和数据库字符集不雷同,有超级大大概形成乱码,使得备份文件无法苏醒。

[root@hsr data]#  /usr/local/mysql/bin/mysqldump -uroot -p  --compact --default-character-set=utf8 test >test.txt

    澳门新萄京 14

  7. 别的常用选项

    (1) -F –flush-logs(备份前刷新日志) 
备份前将关闭旧日志,生成新日志。苏醒的时候一向从新日志早先行行重做,方便重振旗鼓进度。

    (2) -l –lock-tables(给具有表加读锁)
使得数据不能被更新,从而使备份的数目保持生龙活虎致性(能够产生大批量长日子堵塞卡塔 尔(英语:State of Qatar)。

mysql导入导出命令分析,mysql导入导出深入分析

mysqldump是mysql用于转存款和储蓄数据库的实用程序。它十分重要发生一个SQL脚本,个中包罗从头重新成立数据库所必不可缺的命令CREATE
TABLE INSERT等。上面就让大家一块学学啊!

意气风发、mysqldump:数据库备份程序
 有3种艺术来调用mysqldump:

mysqldump [options] db_name [tables]
mysqldump [options] ---database DB1 [DB2 DB3...]
mysqldump [options] --all--database

假定未有一些名别的表或使用了—database或–all–database选项,则转储整个数据库。

1、备份二个数量库.

mysqldump -uroot -p123456 mysql > mysql_backup.sql

这里备份了database mysql的布局和数目,生成的sql文件不会有开创database
mysql的话语。

2、可以用一个发令备份mysql,test三个数据库:

mysqldump -u root -p123456 --database mysql test > my_databases.sql

转移的sql文件有创设database mysql和test的言辞

3、备份全数数据库:

mysqldump -u root -p123456 --all-databases > all_databases.sql

4、导出mysql这一个数据库的结构

 mysqldump -u root -p123456 -d --add-drop-table mysql > mysql_define.sql

5、导出一个数量具备数据并用gz压缩

mysqldump -u root -p123456 mysql | gzip > mysql.sql.gz

可以这么将转储文件读回到服务器:

mysql db_name < backup-file.sql
mysql -e "source /path-to--backup/backup-file.sql" db_name

抑或从gz文件中回复

gunzip -f < mysql.sql.gz | mysql -u root -p123456 test

 

二、SELECT…INTO OUTFILE SELECT…INTO OUTFILE
‘file_name’方式的SELECT能够把被筛选的行写入二个文书中,该公文被成立到服务器主机上。

SELECT…INTO OUTFILE是LOAD DATA
INFILE的补语;用于语句的exort_options部分的语法包蕴部分FIELDS和LINES子句,这么些子句与LOAD
DATA INFILE语句同时选拔。

在底下的例证中,生成三个文件,各值用逗号隔绝。这种格式能够被超多程序行使

SELECT * INTO OUTFILE '/tmp/result.txt' 
FIELDS TERMINATED BY ',' 
OPTIONALLY ENCLOSED BY '"' 
LINES TERMINATED BY '\n'
FROM mysql.user;

将mysql数据库的user表的多少导出到/tmp/result.txt

SELECT…INTO OUTFILE只好导出数据,无法导出结构,日常和load
data联合使用。

 

三、LOAD DATA INFILE
LOAD DATA
INFILE语句用于高速地从三个文件文件中读取行,并装入三个表中。文件名称必需为叁个文字字符串。

由character_set_database系统变量提醒的字符集被用来解释文件中的消息。

LOAD DATA LOCAL INFILE '/tmp/result.txt' INTO TABLE test.user
FIELDS TERMINATED BY ',' 
OPTIONALLY ENCLOSED BY '"' 
LINES TERMINATED BY '\n'

把/tmp/result.txt的数码导入到test数据库的user表。

四、导入导出格式

FIELDS TERMINATED BY ','   字段间分割符采用,号
OPTIONALLY ENCLOSED BY '"'     用"号将字段包围,对数值型无效
LINES TERMINATED BY '\n'       记录间隔符采用\n换行符

以上正是有关mysql导入导出命令的方方面面介绍,希望对大家领悟精晓mysql命令有所扶助

mysqldump是mysql用于转存款和储蓄数据库的实用程序。它首要发生贰个SQL脚本,此中满含从头重新创造数据…

mysql 常用命令

mysql 导入导出的授命。

使用mysqldump命令
mysqldump
是命令行工具,首要用于mysql备份和还原数据。这么些命令使用起来方便,直接在尖峰实行。

Dumping structure and contents of MySQL databases and tables.
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] –databases [OPTIONS] DB1 [DB2 DB3…]
OR mysqldump [OPTIONS] –all-databases [OPTIONS]

mysqldump 的首要参数:

-h, –host=ip 主机地址
-u, –user=name 登录客户名
-P, –port=# Mysql连接端口
-p, –password[=name]
Mysql密码。要是不给定值,直接回车,会提示输入密码
-d, –no-data 不分包行音讯,只导出表结构

那几个命令都不要特意去记,实施 mysqldump –help , 就可以查询利用补助。

导出整个表(包罗数据)
mysqldump -u 用户名 -p [密码] 数据库名 > 导出的文书名
导出表

django migrate 冲突解决

矛盾起因, makemigrations 记录sql的变迁,
migrate奉行,两个人同盟或一不留意,平时变成冲突。

  • 养虎遗患makemigrations对应冲突的脚本
  • 增量匡正表结构

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图