MySQL工作中遇到的问题记录
1:log_slave_updates:
从库1搭建级联从库2,从库1需要开启log_slave_updates,修改/etc/my.cnf,增加一行log_slave_updates=1,重启数据库。
http://blog.itpub.net/12679300/viewspace-1319263/
2:ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL,or READS SQL DATA in its declaration and binary logging is enabled(you *might* want to use the less safe log_bin_trust_function_creators variable)
主从复制架构下,从库报1418,SQL线程停止。解决:关闭log_bin=OFF,或者从库设置set global log_bin_trust_function_creators=TRUE;
3:遇到的问题:gunzip < /tmp/test.sql.gz |mysql -uroot -proot --socket=/u02/33061/tmp/mysql.sock test,第一次导入表数据,第二次导入表的增量数据,第二次的数据覆盖掉第一次导入的数据。
当将备份test.sql.gz导入新的数据库之后,如果再通过这种方式导入同一张表的增量数据时,会覆盖掉第一次导入的数据。
实验演示:
在同一个MySQL数据库实例下进行验证
session1:
mysql> use mydb1;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> select * from test;
+------+--------+
| id | name |
+------+--------+
| 1 | test1 |
| 2 | test2 |
| 3 | test3 |
| 10 | test10 |
| 11 | test11 |
| 12 | test12 |
| 13 | test13 |
| 20 | test20 |
| 21 | test21 |
| 22 | test22 |
| 23 | test23 |
+------+--------+
11 rows in set (0.00 sec)
新建数据库test
mysql> create database test;
session2:备份mydb1下的test表的数据
mysqldump -uroot -p --socket=/u02/33061/tmp/mysql.sock mydb1 test |gzip > /tmp/test.sql.gz
导入到新数据库test
gunzip < /tmp/test.sql.gz |mysql -uroot -proot --socket=/u02/33061/tmp/mysql.sock test
session1:
验证test表的数据,可见,数据库成功恢复到test库
mysql> use test;
mysql> select * from test;
+------+--------+
| id | name |
+------+--------+
| 1 | test1 |
| 2 | test2 |
| 3 | test3 |
| 10 | test10 |
| 11 | test11 |
| 12 | test12 |
| 13 | test13 |
| 20 | test20 |
| 21 | test21 |
| 22 | test22 |
| 23 | test23 |
+------+--------+
11 rows in set (0.00 sec) 此时,mydb1库test表新增数据
mysql> use mydb1;
mysql> insert into test values (100,'test100');
mysql> select * from test;
+------+--------+
| id | name |
+------+--------+
| 1 | test1 |
| 2 | test2 |
| 3 | test3 |
| 10 | test10 |
| 11 | test11 |
| 12 | test12 |
| 13 | test13 |
| 20 | test20 |
| 21 | test21 |
| 22 | test22 |
| 23 | test23 |
| 100 | test100|
+------+--------+
12 rows in set (0.00 sec)
session2:
对新增数据进行备份:
mysqldump -uroot -p --socket=/u02/33061/tmp/mysql.sock mydb1 test --where="id>23" |gzip > /tmp/test1.sql.gz 第二次导入新数据:
gunzip < /tmp/test1.sql.gz |mysql -uroot -proot --socket=/u02/33061/tmp/mysql.sock test session1:
mysql> use test;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A Database changed
mysql> select * from test;
+------+---------+
| id | name |
+------+---------+
| 100 | test100 |
+------+---------+
1 row in set (0.00 sec)
由此可见,覆盖掉了第一次导入的数据。
MySQL工作中遇到的问题记录的更多相关文章
- python 往mysql数据库中插入多条记录。
最近想写mysql库,用到insert into语句,如何一次性将多条记录插入库表中呢. MySQLdb提供了两个执行语句的方法:一个是execute(),另一个是executemany() exec ...
- Git 日常工作中使用的命令记录
前言 这篇文章主要是介绍我在使用Git中的有一些忘记了,但是很重要的命令. 20190424 Git 历史信息 username 和 email 更改 git config alias.chang ...
- mysql工作中常见问题
1.Error Code: 1044 - Access denied for user 'root'@'localhost' to database 'information_schema'Query ...
- mysql查询表中最后一条记录
查询全部的记录: select * from test_limit ; 查第一条记录: select * from test_limit limit 1; ...
- 工作中MySql的了解到的小技巧
工作中MySql的小技巧 1. 跑脚本时,经常遇到有则更新无插入的 逻辑操作:通常情况下,来一波if()判断然后选择 更新还是插入,前两天逛论坛时发现有人在比较REPLACE INTO 和 INSET ...
- 工作中遇到的问题——mysql关于年龄,性别的统计
终于暂时闲下来了,一个项目加班加点一年多,前面太忙就顾不上博客了,慢慢的就懈怠了,最近算是暂时闲下来了,项目已经验收进入后期维护阶段,每天空余的时间也多了,想重新拾起博客,不求写什么高深的东西,以后就 ...
- 【mysql】工作中mysql常用命令及语句
1.查看mysql版本号 MySQL [release_test_oa]> select version(); +------------+ | version() | +----------- ...
- MySQL常见6个考题在实际工作中的运用
题目一 MyISAM和InnoDB的区别,什么时候选择MyISAM 参考回答 InnoDB是目前MySQL主流版本(5.6.5.7.8.0)默认的存储引擎,支持事务.外键.行级锁,对于并发条件下要求数 ...
- 记录工作中遇到的BUG,经典的数据库时区问题和字段类型tinyint(1)问题
记录工作中发现的相对而言经典的问题 [数据库时区问题] 我个人数据库配置为CST 如下 我们测试环境的数据库配置为UTC 如下 倘若我修改了测试环境数据库时区为CST.由此造成的问题是 系统读取到数据 ...
随机推荐
- Monte Carlo Policy Evaluation
Model-Based and Model-Free In the previous several posts, we mainly talked about Model-Based Reinfor ...
- Angular5 import interface 报错:XXX is not a module
在项目里定义了一个interface,device.ts.然后在component.ts中要使用这个interface,import之后,VSCode报错:‘xxx/xxx/xxx/device.ts ...
- lesson1-图的概念和图论模型
说明: 图论专题开设的目的主要是作为本学期复习巩固和分享自己对于图论的理解,主要参考的是老师的PPT.应老师要求,不能共享文件,抱歉! 参考书目:[1] J.A. Bondy, U.S.R. Mur ...
- CDH平台搭建遇到的问题
安装之前遇到的问题: Note: Forwarding request to 'systemctl disable NetworkManager.service'. Removed symlink ...
- 《剑指offer》面试题17 合并两个排序的链表 Java版
我的方法:新初始化一个链表头,比较两个链表当前节点的大小,然后连接到该链表中.遍历两个链表直到null为止. public ListNode merge(ListNode first, ListNod ...
- 当系统开启safe_mode和 open_basedir
当系统开启safe_mode和 open_basedir,在程序中使用以下语句curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);并且遇到301,302状态吗时 ...
- python进阶之类的反射
有应用场景的技术才是有灵魂的技术------>最近同时问我,在python中,给你一个函数或者类的字符串名称,你怎么得到该函数和类,以下结合源码记录我得到的方式: 1.给一个函数的字符串&quo ...
- mysql-介绍、下载安装以及软件基本管理
一.mysql介绍 mysql是一个关系型数据库管理系统,它是一个基于socket编写的C/S架构的软件. 客户端软件: mysql自带:如mysql命令,mysqldump命令等. python模块 ...
- python抓取往期双色球
import requests import json,csv ''' http://m.zhcw.com/clienth5.do?lottery=FC_SSQ&pageSize=20& ...
- FCKEditor报java.lang.NullPointerException
1.需要在 加value=“ ” <FCK:editor instanceName="replycontent" basePath="/fckeditor" ...