先不说话  先来一段代码块

 mysql> show variables like 'autocommit';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| autocommit | ON |
+---------------+-------+
1 row in set (0.00 sec) mysql> set autocommit=0;
Query OK, 0 rows affected (0.00 sec) mysql> show variables like 'autocommit';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| autocommit | OFF |
+---------------+-------+
1 row in set (0.00 sec) mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000034 | 120 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec) #第二个
mysql> create database luna;
Query OK, 1 row affected (0.00 sec) mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000034 | 214 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec) mysql> use luna;
Database changed
mysql> create table t1(id int);
Query OK, 0 rows affected (0.08 sec) mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000034 | 311 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec) mysql> insert into t1 values(1);
Query OK, 1 row affected (0.00 sec) mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000034 | 311 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec) mysql> commit;
Query OK, 0 rows affected (0.33 sec) mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000034 | 499 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec) #update
mysql> update t1 set id=11 where id=1;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0 mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000034 | 857 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec) mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000034 | 1051 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec) #delete
mysql> delete from t1 where id=2;
Query OK, 1 row affected (0.00 sec) mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000034 | 1051 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec) mysql> commit;
Query OK, 0 rows affected (0.01 sec) mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000034 | 1239 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec) #drop
mysql> select * from t1;
+------+
| id |
+------+
| 11 |
| 3 |
| 4 |
+------+
3 rows in set (0.00 sec) mysql> update t1 set id=44 where id=4;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0 mysql> drop table t1;
Query OK, 0 rows affected (0.04 sec) mysql> drop database luna;
Query OK, 0 rows affected (0.08 sec) mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000034 | 1633 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec) #工具查看
mysql> show binlog events in 'mysql-bin.000034'; #在命令行查看 [root@db01-sa mysql]# mysqlbinlog --base64-output=decode-rows -vvv /data/mysql/mysql-bin.000034 /*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#180627 17:49:07 server id 6 end_log_pos 120 CRC32 0x75f5723b Start: binlog v 4, server v 5.6.38-log created 180627 17:49:07 at startup
# Warning: this binlog is either in use or was not closed properly.
ROLLBACK/*!*/;
# at 120
#180627 18:21:12 server id 6 end_log_pos 214 CRC32 0x0a1b14fc Query thread_id=2 exec_time=0 error_code=0
SET TIMESTAMP=1530094872/*!*/;
SET @@session.pseudo_thread_id=2/*!*/;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=1075838976/*!*/;
SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C utf8 *//*!*/;
SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=33/*!*/;
SET @@session.lc_time_names=0/*!*/;
SET @@session.collation_database=DEFAULT/*!*/;
create database luna
/*!*/;
# at 214
#180627 18:22:16 server id 6 end_log_pos 311 CRC32 0x9fe876dc Query thread_id=2 exec_time=0 error_code=0
use `luna`/*!*/;
SET TIMESTAMP=1530094936/*!*/;
create table t1(id int)
/*!*/;
# at 311
#180627 18:23:02 server id 6 end_log_pos 383 CRC32 0xa66c8e7d Query thread_id=2 exec_time=0 error_code=0
SET TIMESTAMP=1530094982/*!*/;
BEGIN
/*!*/;
# at 383
#180627 18:23:02 server id 6 end_log_pos 428 CRC32 0xf0097518 Table_map: `luna`.`t1` mapped to number 70
# at 428
#180627 18:23:02 server id 6 end_log_pos 468 CRC32 0x2b1aa647 Write_rows: table id 70 flags: STMT_END_F
### INSERT INTO `luna`.`t1`
### SET
### @1=1 /* INT meta=0 nullable=1 is_null=0 */
# at 468
#180627 18:23:28 server id 6 end_log_pos 499 CRC32 0x62719421 Xid = 37
COMMIT/*!*/;
# at 499
#180627 18:25:06 server id 6 end_log_pos 571 CRC32 0x84c9efe6 Query thread_id=2 exec_time=0 error_code=0
SET TIMESTAMP=1530095106/*!*/;
BEGIN
/*!*/;
# at 571
#180627 18:25:06 server id 6 end_log_pos 616 CRC32 0x74d151e2 Table_map: `luna`.`t1` mapped to number 70
# at 616
#180627 18:25:06 server id 6 end_log_pos 656 CRC32 0xd10d7120 Write_rows: table id 70 flags: STMT_END_F
### INSERT INTO `luna`.`t1`
### SET
### @1=2 /* INT meta=0 nullable=1 is_null=0 */
# at 656
#180627 18:27:16 server id 6 end_log_pos 701 CRC32 0x7895e39d Table_map: `luna`.`t1` mapped to number 70
# at 701
#180627 18:27:16 server id 6 end_log_pos 741 CRC32 0x5acc32fe Write_rows: table id 70 flags: STMT_END_F
### INSERT INTO `luna`.`t1`
### SET
### @1=3 /* INT meta=0 nullable=1 is_null=0 */
# at 741
#180627 18:27:30 server id 6 end_log_pos 786 CRC32 0xb4ed9f5a Table_map: `luna`.`t1` mapped to number 70
# at 786
#180627 18:27:30 server id 6 end_log_pos 826 CRC32 0x819e8db3 Write_rows: table id 70 flags: STMT_END_F
### INSERT INTO `luna`.`t1`
### SET
### @1=4 /* INT meta=0 nullable=1 is_null=0 */
# at 826
#180627 18:27:58 server id 6 end_log_pos 857 CRC32 0x452e1f31 Xid = 41
COMMIT/*!*/;
# at 857
#180627 18:29:56 server id 6 end_log_pos 929 CRC32 0x5e68dff7 Query thread_id=2 exec_time=0 error_code=0
SET TIMESTAMP=1530095396/*!*/;
BEGIN
/*!*/;
# at 929
#180627 18:29:56 server id 6 end_log_pos 974 CRC32 0xf4e4e2bf Table_map: `luna`.`t1` mapped to number 70
# at 974
#180627 18:29:56 server id 6 end_log_pos 1020 CRC32 0x2d809738 Update_rows: table id 70 flags: STMT_END_F
### UPDATE `luna`.`t1`
### WHERE
### @1=1 /* INT meta=0 nullable=1 is_null=0 */
### SET
### @1=11 /* INT meta=0 nullable=1 is_null=0 */
# at 1020
#180627 18:30:25 server id 6 end_log_pos 1051 CRC32 0x08029580 Xid = 52
COMMIT/*!*/;
# at 1051
#180627 18:31:25 server id 6 end_log_pos 1123 CRC32 0xcf1b6980 Query thread_id=2 exec_time=0 error_code=0
SET TIMESTAMP=1530095485/*!*/;
BEGIN
/*!*/;
# at 1123
#180627 18:31:25 server id 6 end_log_pos 1168 CRC32 0x7729069b Table_map: `luna`.`t1` mapped to number 70
# at 1168
#180627 18:31:25 server id 6 end_log_pos 1208 CRC32 0x04cb5496 Delete_rows: table id 70 flags: STMT_END_F
### DELETE FROM `luna`.`t1`
### WHERE
### @1=2 /* INT meta=0 nullable=1 is_null=0 */
# at 1208
#180627 18:31:36 server id 6 end_log_pos 1239 CRC32 0x27093f44 Xid = 56
COMMIT/*!*/;
# at 1239
#180627 18:33:45 server id 6 end_log_pos 1311 CRC32 0x8be80fc2 Query thread_id=2 exec_time=0 error_code=0
SET TIMESTAMP=1530095625/*!*/;
BEGIN
/*!*/;
# at 1311
#180627 18:33:45 server id 6 end_log_pos 1356 CRC32 0x77578bf1 Table_map: `luna`.`t1` mapped to number 70
# at 1356
#180627 18:33:45 server id 6 end_log_pos 1402 CRC32 0x9c7bf8df Update_rows: table id 70 flags: STMT_END_F
### UPDATE `luna`.`t1`
### WHERE
### @1=4 /* INT meta=0 nullable=1 is_null=0 */
### SET
### @1=44 /* INT meta=0 nullable=1 is_null=0 */
# at 1402
#180627 18:34:17 server id 6 end_log_pos 1433 CRC32 0x354e0150 Xid = 60
COMMIT/*!*/;
# at 1433
#180627 18:34:17 server id 6 end_log_pos 1548 CRC32 0x52b3dc50 Query thread_id=2 exec_time=0 error_code=0
SET TIMESTAMP=1530095657/*!*/;
DROP TABLE `t1` /* generated by server */
/*!*/;
# at 1548
#180627 18:34:26 server id 6 end_log_pos 1633 CRC32 0x2e40af97 Query thread_id=2 exec_time=0 error_code=0
SET TIMESTAMP=1530095666/*!*/;
drop database luna
/*!*/;
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/; #截取
[root@db01-sa mysql]# mysqlbinlog --start-position=120 --stop-position=857 /data/mysql/mysql-bin.000034 >/tmp/luna2.sql
WARNING: The range of printed events ends with a row event or a table map event that does not have the STMT_END_F flag
set. This might be because the last statement was not fully written to the log, or because you are using a
--stop-position or --stop-datetime that refers to an event in the middle of a statement. The event(s) from
the partial statement have not been written to output. 警告:打印事件的范围以行或表映射事件结束,没有设置了STMT_END_F标志。这可能是因为过去的声明没有完全写入日志,或者因为您使
用的是——停止位置,stop-datetime指一个事件在一份声明中。部分语句中的事件尚未写入输出。 #产生以上报错就是因为截取的时候 一定要注意begin begin是一个语句的开始 一定要从begin之前开始截断
之前的语句mysqlbinlog --start-position=120 --stop-position=974 /data/mysql/mysql-bin.000034 >/tmp/luna.sql 当中的974要改成857 mysql> set sql_log_bin=0;
Query OK, 0 rows affected (0.00 sec) mysql> source /tmp/luna.sql;
Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected, 1 warning (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Charset changed
Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 1 row affected (0.00 sec) Database changed
Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.36 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.01 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.01 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.03 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.01 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) mysql> show database;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'database' at line 1
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| binlog |
| luna |
| mysql |
| nod01 |
| oldboy |
| performance_schema |
| test |
| world |
+--------------------+
9 rows in set (0.00 sec) mysql> use luna
Database changed
mysql>
mysql>
mysql> show table;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
mysql> show tables;
+----------------+
| Tables_in_luna |
+----------------+
| t1 |
+----------------+
1 row in set (0.00 sec) mysql> select * from t1;
+------+
| id |
+------+
| 1 |
| 2 |
| 3 |
| 4 |
+------+
4 rows in set (0.00 sec) mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000034 | 1633 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

MySQL binlog的补充

Mysql的binlog日志作用是用来记录mysql内部增删改查等对mysql数据库有更新的内容的记录(对数据库的改动),对数据库的查询select或show等不会被binlog日志记录;主要用于数据库的主从复制以及增量恢复。
mysql的binlog日志必须打开log-bin功能才能生存binlog日志
-rw-rw---- 1 mysql mysql   669 8月  10 21:29 mysql-bin.000001
-rw-rw---- 1 mysql mysql   126 8月  10 22:06 mysql-bin.000002
-rw-rw---- 1 mysql mysql 11799 8月  15 18:17 mysql-bin.000003
 
 

2、Mysqlbinlog解析工具

  Mysqlbinlog功能是将Mysql的binlog日志转换成Mysql语句,默认情况下binlog日志是二进制文件,无法直接查看。
  Mysqlbinlog参数
参数 描述
-d 指定库的binlog
-r 相当于重定向到指定文件
--start-position--stop-position 按照指定位置精确解析binlog日志(精确),如不接--stop-positiion则一直到binlog日志结尾
--start-datetime--stop-datetime 按照指定时间解析binlog日志(模糊,不准确),如不接--stop-datetime则一直到binlog日志结尾
备注:myslqlbinlog分库导出binlog,如使用-d参数,更新数据时必须使用use database。
例:解析ceshi数据库的binlog日志并写入my.sql文件
#mysqlbinlog -d ceshi mysql-bin.000003 -r my.sql
 
 
 
使用位置精确解析binlog日志
#mysqlbinlog mysql-bin.000003 --start-position=100  --stop-position=200 -r my.sql
 
 
 
3、MySQL binlog的三种工作模式
  (1)Row level
  日志中会记录每一行数据被修改的情况,然后在slave端对相同的数据进行修改。
  优点:能清楚的记录每一行数据修改的细节
  缺点:数据量太大
  (2)Statement level(默认)
  每一条被修改数据的sql都会记录到master的bin-log中,slave在复制的时候sql进程会解析成和原来master端执行过的相同的sql再次执行
  优点:解决了 Row level下的缺点,不需要记录每一行的数据变化,减少bin-log日志量,节约磁盘IO,提高新能
  缺点:容易出现主从复制不一致
  (3)Mixed(混合模式)
  结合了Row level和Statement level的优点

4、MySQL企业binlog模式的选择

  1. 互联网公司使用MySQL的功能较少(不用存储过程、触发器、函数),选择默认的Statement level
  2. 用到MySQL的特殊功能(存储过程、触发器、函数)则选择Mixed模式
  3. 用到MySQL的特殊功能(存储过程、触发器、函数),又希望数据最大化一直则选择Row模式
5、设置MySQL binlog模式
  查看MySQLbinlog模式
 
mysql>show global variables like "binlog%";

+-----------------------------------------+-----------+
| Variable_name                         | Value     |
+-----------------------------------------+-----------+
| binlog_cache_size                      | 1048576   |
| binlog_direct_non_transactional_updates | OFF       |
| binlog_format                          | STATEMENT |       #系统默认为STATEMENT模式
| binlog_stmt_cache_size                 | 32768     |
+-----------------------------------------+-----------+
4 rows in set (0.00 sec) 
 
 
 
 
MySQL中设置binlog模式
mysql>set global binlog_format='ROW'; 
 
配置文件中设置binlog模式
 
#vim my.cnf

[mysqld]
binlog_format='ROW'          #放在mysqld模块下面
user    = mysql
port    = 3306
socket  = /data/3306/mysql.sock
 
 
 
6、配置完成后需要重启mysql服务
Row模式下解析binlog日志
 
#mysqlbinlog --base64-output="decode-rows" -v mysql-bin.000001
 
以上内容转自:https://www.cnblogs.com/xhyan/p/6530861.html

MySQL 二进制文件恢复的更多相关文章

  1. MySQL 二进制文件恢复数据基础版本

    先来一段 自行体会 #---------------------------------------------------------------------------------- #模拟通过b ...

  2. [svc]mysql备份恢复及常用命令

    如何实现mysql读写分离 1.通过程序实现读写分类(性能 效率最佳) php和java都可以通过设置多个连接文件轻松实现对db的读写分离,即当select时,就去连读库的连接文件,当update,i ...

  3. MySql数据库恢复(*frm)文件

    mysql数据库恢复(*frm)文件 WorkBench 在使用虚拟服务器时,服务器提供商一般不会像我们使用本地数据库一样:使用导入导出(这样的文件后缀是*.sql).大部分时候提供的是一个文件夹,里 ...

  4. MySQL 备份恢复(导入导出)单个 innodb表

    MySQL 备份恢复单个innodb表呢,对于这种恢复我们我们很多朋友都不怎么了解了,下面一起来看一篇关于MySQL 备份恢复单个innodb表的教程 在实际环境中,时不时需要备份恢复单个或多个表(注 ...

  5. Mysql备份恢复方案解析

    1.全量备份和增量备份 1.1全量备份 就是对现有的数据进行全部备份,之前做的备份均可舍弃,以最新的全备为基点. a.全备所有数据库 Innodb引擎: [root@leader mysql]#mys ...

  6. 基于Redo Log和Undo Log的MySQL崩溃恢复流程

    在之前的文章「简单了解InnoDB底层原理」聊了一下MySQL的Buffer Pool.这里再简单提一嘴,Buffer Pool是MySQL内存结构中十分核心的一个组成,你可以先把它想象成一个黑盒子. ...

  7. mysql二进制文件操作语法(mysql binary log operate statements)

    开启 binary logs 功能 在 mysql 配置文件中配置 log-bin,重启 mysql my.cnf (on Linux/unix) or my.ini (on Windows) 例子: ...

  8. mysql binlog恢复

    MySQL Binary Log也就是常说的bin-log, ,是mysql执行改动产生的二进制日志文件,其主要作用有两个: * 数据回复 * 主从数据库.用于slave端执行增删改,保持与maste ...

  9. MySQL数据库恢复(使用mysqlbinlog命令)

    binlog是通过记录二进制文件方式来备份数据,然后在从二进制文件将数据恢复到某一时段或某一操作点. 1:开启binlog日志记录 修改mysql配置文件mysql.ini,在[mysqld]节点下添 ...

随机推荐

  1. ACCESS表的视图

    ACCESS表的视图 点击:   发布日期:2007-8-31 6:37:00   进入论坛     表是关系型数据库的基本结构.在Access中,表是一种关系特定主题的数据集合,如产品.供应商等.为 ...

  2. iOS开发之旅:实现一个APP界面框架

    在上一篇博客中,给大家介绍了一下我们传统的 APP 界面框架-标签导航的一些优缺点,在这篇文章中我会来给大家演示,如何用代码去实现这一框架.本次的实现我会分成俩部分来讲,好了闲话少说,接下来进入到开发 ...

  3. flash存储原理

    norflash 带有 SRAM接口,有足够的地址引脚来寻址,可以很容易地存取其内容每一字节:nandflash器件使用复杂的IO口串行的存取数据,读写操作采用512字节的块(也就是读/写某个字节,必 ...

  4. iOS-----推送机制(下)

    推 送 机 制(下) 单击”从证书颁发机构请求证书”后,将会显示下图所示的对话框 输入电子邮件地址和常用名称,并选中“存储到磁盘”单选钮,然后单击“继续”按钮,该程序将会创建一个“Certificat ...

  5. 如何快速切换目录cd-linux

    前言 cd命令是linux系统中的基本命令行,表示改变工作目录.本文主要介绍几个常用的cd命令. 系统环境 OS:ubuntu16.04. 操作过程 cd www 表示切换到www目录: cd .. ...

  6. 在python中的使用

    操作步骤: 1. 连接数据库,生成数据库连接对象 conn = pymongo.MongoClient('localhost',27017) 2. 选择要操作的数据库,生成数据库对象 (__setit ...

  7. 20155207 2006-2007-2 《Java程序设计》第5周学习总结

    20155207 2006-2007-2 <Java程序设计>第5周学习总结 教材学习内容总结 第八章 语法与继承架构 Java中的错误以对象方式呈现为 java.lang.Throwab ...

  8. test20180922 打铁的匠

    题意 分析 法一:吉司机线段树 这是一个在线的\(O( n + q \cdot \log^2 n)\)做法. 考虑维护节点到根的权值前缀和cost,那么查询的时候区间减去子树根节点的cost就是价值. ...

  9. Laravel 服务容器实例教程 —— 深入理解控制反转(IoC)和依赖注入(DI)

    容器,字面上理解就是装东西的东西.常见的变量.对象属性等都可以算是容器.一个容器能够装什么,全部取决于你对该容器的定义.当然,有这样一种容器,它存放的不是文本.数值,而是对象.对象的描述(类.接口)或 ...

  10. Hadoop学习笔记(1)(转)

    Hadoop学习笔记(1) ——菜鸟入门 Hadoop是什么?先问一下百度吧: [百度百科]一个分布式系统基础架构,由Apache基金会所开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序. ...