mysqldump:Couldn't find table:";"是怎么回事

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysqldump:Couldn't find table:";"是怎么回事相关的知识,希望对你有一定的参考价值。

参考技术A mysql pid 文件记录的是当前 mysqld 进程的 pid,pid 亦即 Process ID。
可以通过如下的例子查看:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

$ /etc/init.d/mysqld start
Starting MySQL. SUCCESS!
$ ll /data/mysql/centos.pid
-rw-rw---- 1 mysql mysql 5 Apr 8 09:16 /data/mysql/centos.pid
$ cat /data/mysql/centos.pid
1598
$ ps -ef | grep mysql | grep -v grep
root 1476 1 0 09:16 pts/0 00:00:00 /bin/sh \
/usr/local/mysql/bin/mysqld_safe \
--datadir=/data/mysql \
--pid-file=/data/mysql/centos.pid
mysql 1598 1476 0 09:16 pts/0 00:00:00 /usr/local/mysql/bin/mysqld \
--basedir=/usr/local/mysql \
--datadir=/data/mysql --user=mysql \
--log-error=/data/mysql/centos.err \
--pid-file=/data/mysql/centos.pid \
--socket=/tmp/mysql.sock \
--port=3306

1、未指定 pid 文件时,pid 文件默认名为 主机名.pid,存放的路径在默认 MySQL 的数据目录。通过 mysqld_safe 启动 MySQL 时,mysqld_safe 会检查 pid 文件,如果 pid 文件不存在,不做处理;如果文件存在,且 pid 已占用则报错 "A mysqld process already exists",如果文件存在,但 pid 未占用,则删除 pid 文件。2、查看 MySQL 的源码可以知道,mysqld 启动后会通过 create_pid_file 函数新建 pid 文件,通过 getpid() 获取当前进程 pid 并将 pid 写入 pid 文件。3、因此,通过 mysqld_safe 启动时, MySQL pid 文件的作用是:在数据文件是同一份,但端口不同的情况下,防止同一个数据库被启动多次。本回答被提问者采纳
参考技术B 1.导出结构不导出数据
mysqldump --opt -d 数据库名 -u root -p > xxx.sql  

2.导出数据不导出结构
mysqldump -t 数据库名 -uroot -p > xxx.sql 

3.导出数据和表结构
mysqldump 数据库名 -uroot -p > xxx.sql 

4.导出特定表的结构
mysqldump -uroot -p -B 数据库名 --table 表名 > xxx.sql  

导入数据:
  由于mysqldump导出的是完整的SQL语句,所以用mysql客户程序很容易就能把数据导入了:
#mysql 数据库名 < 文件名
#source /tmp/xxx.sql 
正确答案,赶紧打占

mysqldump: Couldn't execute 'SAVEPOINT sp':

  1. 报错信息

# mysqldump --default-character-set=utf8 --set-gtid-purged=on  -uxx -pxx -hx.x.x.x  --triggers --routines --events --single-transaction --databases xx  >./bak_xx_$(date +%F).sql

mysqldump: [Warning] Using a password on the command line interface can be insecure.

Warning: A partial dump from a server that has GTIDs will by default include the GTIDs of all transactions, even those that changed suppressed parts of the database. If you don‘t want to restore GTIDs, pass --set-gtid-purged=OFF. To make a complete dump, pass --all-databases --triggers --routines --events. 

mysqldump: Couldn‘t execute ‘SAVEPOINT sp‘: 

The MySQL server is running with the --transaction-write-set-extraction!=OFF option so it cannot execute this statement (1290)


2.处理方法

> set global transaction_write_set_extraction=off;   --Reserved for future use.

Query OK, 0 rows affected (0.00 sec)


3.总结

数据库版本5.7.15 ,备份的时候报错,根据报错信息到官网查看相关参数含义。以上参数未来使用预留,默认是为Off,可以动态修改,未来组复制特性需要使用此参数。



本文出自 “12318731” 博客,请务必保留此出处http://12328731.blog.51cto.com/12318731/1875700

以上是关于mysqldump:Couldn't find table:";"是怎么回事的主要内容,如果未能解决你的问题,请参考以下文章

[tomcat] couldn't get host name 解决

Couldn't resolve host 'mirrorlist.centos.org'解决办法

CentOS Couldn't resolve host 'apt.sw.be'

mysqldump: Couldn't execute 'SAVEPOINT sp':

iOS开发—— Couldn't add the Keychain Item

android couldn't find so