热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

每天进步一点点mysqlmysqlbinlog_MySQL

一、简介mysqlbinlog:用于查看服务器生成的二进制日志的工具。二、命令式mysqlbinlog选项日志文件1日志文件2三、常用参数-d--databasename:
一、 简介

mysqlbinlog:用于查看服务器生成的二进制日志的工具。

二、 命令格式

mysqlbinlog 选项日志文件1 日志文件2

三、 常用参数

-d--database=name:指定数据库名称,只列出指定数据库相关操作

-o--offset=#:忽略掉日志中前N行命令

-r--result-file=name:将输出的文本格式日志输出到指定文件

-s--short-form:显示简单格式忽略掉一些信息

--set-charset=char-name:在输出为文本格式时,在文件第一行加上set names char-name,这个选项在某些情况下装载数据时非常有用。

--start-datetime=date --stop-datetime=date指定日期间各内的所有日志

--start-position=# --stop-position=#:指定位置时间间隔内的所有日志

四、 常用例子

1. 查看当前正在使用的二进制日志文件

mysql>show master status;

+--------------+----------+--------------+------------------+-------------------+

| File | Position | Binlog_Do_DB |Binlog_Ignore_DB | Executed_Gtid_Set |

+--------------+----------+--------------+------------------+-------------------+

| mysql.000007 | 120 | | | |

+--------------+----------+--------------+------------------+-------------------+

1 row in set (0.00 sec)

2. 不加任何参数,显示所有日志

[root@localhostdata]# mysqlbinlog mysql.000007

/*!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

#150717 11:01:43 server id 1 end_log_pos 120 CRC32 0xc3bad8fd Start: binlog v 4, server v 5.6.12-logcreated 150717 11:01:43

# Warning: this binlog is either in use orwas not closed properly.

BINLOG '

F3CoVQ8BAAAAdAAAAHgAAAABAAQANS42LjEyLWxvZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

AAAAAAAAAAAAAAAAAAAAAAAAEzgNAAgAEgAEBAQEEgAAXAAEGggAAAAICAgCAAAACgoKGRkAAf3Y

usM=

'/*!*/;

# at 120

#150717 11:05:54 server id 1 end_log_pos 219 CRC32 0x79fabcbc Query thread_id=24910 exec_time=0 error_code=0

use`test2`/*!*/;

SET TIMESTAMP=1437102354/*!*/;

SET @@session.pseudo_thread_id=24910/*!*/;

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=8/*!*/;

SET @@session.lc_time_names=0/*!*/;

SET@@session.collation_database=DEFAULT/*!*/;

createtable t6(id int)

/*!*/;

# at 219

#150717 11:06:09 server id 1 end_log_pos 300 CRC32 0xd883c511 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102369/*!*/;

BEGIN

/*!*/;

# at 300

#150717 11:06:09 server id 1 end_log_pos 399 CRC32 0x4845ae22 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102369/*!*/;

insertinto t6 value(1)

/*!*/;

# at 399

#150717 11:06:09 server id 1 end_log_pos 430 CRC32 0x254bd95b Xid = 75156

COMMIT/*!*/;

# at 430

#150717 11:06:12 server id 1 end_log_pos 511 CRC32 0x400701db Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102372/*!*/;

BEGIN

/*!*/;

# at 511

#150717 11:06:12 server id 1 end_log_pos 610 CRC32 0x4d494d54 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102372/*!*/;

insertinto t6 value(2)

/*!*/;

# at 610

#150717 11:06:12 server id 1 end_log_pos 641 CRC32 0xc0160921 Xid = 75157

COMMIT/*!*/;

# at 641

#150717 11:06:14 server id 1 end_log_pos 722 CRC32 0x722e009d Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102374/*!*/;

BEGIN

/*!*/;

# at 722

#150717 11:06:14 server id 1 end_log_pos 821 CRC32 0x46f08ed1 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102374/*!*/;

insertinto t6 value(3)

/*!*/;

# at 821

#150717 11:06:14 server id 1 end_log_pos 852 CRC32 0x6eccabd7 Xid = 75158

COMMIT/*!*/;

# at 852

#150717 11:06:36 server id 1 end_log_pos 933 CRC32 0x1d97f072 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102396/*!*/;

BEGIN

/*!*/;

# at 933

#150717 11:06:36 server id 1 end_log_pos 1034 CRC32 0xca5d7197 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102396/*!*/;

deletefrom t6 where id=3

/*!*/;

# at 1034

#150717 11:06:36 server id 1 end_log_pos 1065 CRC32 0xc36e2552 Xid = 75159

COMMIT/*!*/;

# at 1065

#150717 11:21:20 server id 1 end_log_pos 1166 CRC32 0x937167ae Query thread_id=24910 exec_time=0 error_code=0

use `jiaowu`/*!*/;

SET TIMESTAMP=1437103280/*!*/;

createtable t7(id int)

/*!*/;

# at 1166

#150717 11:22:03 server id 1 end_log_pos 1261 CRC32 0xb31be6d1 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437103323/*!*/;

truncatetable t7

/*!*/;

DELIMITER ;

# End of log file

ROLLBACK /* added by mysqlbinlog */;

/*!50003 SETCOMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;

/*!50530 SET@@SESSION.PSEUDO_SLAVE_MODE=0*/;

1. 做一些操作

mysql>create table t6(id int);

Query OK, 0 rows affected (0.02 sec)

mysql>insert into t6 value(1);

Query OK, 1 row affected (0.00 sec)

mysql>insert into t6 value(2);

Query OK, 1 row affected (0.01 sec)

mysql>insert into t6 value(3);

Query OK, 1 row affected (0.01 sec)

mysql>delete from t6 where id=3;

Query OK, 1 row affected (0.00 sec)

2. 只看jiaowu库中的信息

[root@localhostdata]# mysqlbinlog mysql.000007 -d jiaowu

/*!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

#150717 11:01:43 server id 1 end_log_pos 120 CRC32 0xc3bad8fd Start: binlog v 4, server v 5.6.12-logcreated 150717 11:01:43

# Warning: this binlog is either in use orwas not closed properly.

BINLOG '

F3CoVQ8BAAAAdAAAAHgAAAABAAQANS42LjEyLWxvZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

AAAAAAAAAAAAAAAAAAAAAAAAEzgNAAgAEgAEBAQEEgAAXAAEGggAAAAICAgCAAAACgoKGRkAAf3Y

usM=

'/*!*/;

# at 120

# at 219

#150717 11:06:09 server id 1 end_log_pos 300 CRC32 0xd883c511 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102369/*!*/;

SET @@session.pseudo_thread_id=24910/*!*/;

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=8/*!*/;

SET @@session.lc_time_names=0/*!*/;

SET@@session.collation_database=DEFAULT/*!*/;

BEGIN

/*!*/;

# at 300

# at 399

#150717 11:06:09 server id 1 end_log_pos 430 CRC32 0x254bd95b Xid = 75156

COMMIT/*!*/;

# at 430

#150717 11:06:12 server id 1 end_log_pos 511 CRC32 0x400701db Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102372/*!*/;

BEGIN

/*!*/;

# at 511

# at 610

#150717 11:06:12 server id 1 end_log_pos 641 CRC32 0xc0160921 Xid = 75157

COMMIT/*!*/;

# at 641

#150717 11:06:14 server id 1 end_log_pos 722 CRC32 0x722e009d Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102374/*!*/;

BEGIN

/*!*/;

# at 722

# at 821

#150717 11:06:14 server id 1 end_log_pos 852 CRC32 0x6eccabd7 Xid = 75158

COMMIT/*!*/;

# at 852

#150717 11:06:36 server id 1 end_log_pos 933 CRC32 0x1d97f072 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102396/*!*/;

BEGIN

/*!*/;

# at 933

# at 1034

#150717 11:06:36 server id 1 end_log_pos 1065 CRC32 0xc36e2552 Xid = 75159

COMMIT/*!*/;

# at 1065

#150717 11:21:20 server id 1 end_log_pos 1166 CRC32 0x937167ae Query thread_id=24910 exec_time=0 error_code=0

use `jiaowu`/*!*/;

SET TIMESTAMP=1437103280/*!*/;

createtable t7(id int)

/*!*/;

# at 1166

#150717 11:22:03 server id 1 end_log_pos 1261 CRC32 0xb31be6d1 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437103323/*!*/;

truncatetable t7

/*!*/;

DELIMITER ;

# End of log file

ROLLBACK /* added by mysqlbinlog */;

/*!50003 SETCOMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;

/*!50530 SET@@SESSION.PSEUDO_SLAVE_MODE=0*/;

3. 忽略前三个操作

[root@localhostdata]# mysqlbinlog mysql.000007 -o 3

/*!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

#150717 11:01:43 server id 1 end_log_pos 120 CRC32 0xc3bad8fd Start: binlog v 4, server v 5.6.12-logcreated 150717 11:01:43

# Warning: this binlog is either in use orwas not closed properly.

BINLOG '

F3CoVQ8BAAAAdAAAAHgAAAABAAQANS42LjEyLWxvZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

AAAAAAAAAAAAAAAAAAAAAAAAEzgNAAgAEgAEBAQEEgAAXAAEGggAAAAICAgCAAAACgoKGRkAAf3Y

usM=

'/*!*/;

# at 300

#150717 11:06:09 server id 1 end_log_pos 399 CRC32 0x4845ae22 Query thread_id=24910 exec_time=0 error_code=0

use`test2`/*!*/;

SET TIMESTAMP=1437102369/*!*/;

SET @@session.pseudo_thread_id=24910/*!*/;

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=8/*!*/;

SET @@session.lc_time_names=0/*!*/;

SET@@session.collation_database=DEFAULT/*!*/;

insertinto t6 value(1)

/*!*/;

# at 399

#150717 11:06:09 server id 1 end_log_pos 430 CRC32 0x254bd95b Xid = 75156

COMMIT/*!*/;

# at 430

#150717 11:06:12 server id 1 end_log_pos 511 CRC32 0x400701db Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102372/*!*/;

BEGIN

/*!*/;

# at 511

#150717 11:06:12 server id 1 end_log_pos 610 CRC32 0x4d494d54 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102372/*!*/;

insertinto t6 value(2)

/*!*/;

# at 610

#150717 11:06:12 server id 1 end_log_pos 641 CRC32 0xc0160921 Xid = 75157

COMMIT/*!*/;

# at 641

#150717 11:06:14 server id 1 end_log_pos 722 CRC32 0x722e009d Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102374/*!*/;

BEGIN

/*!*/;

# at 722

#150717 11:06:14 server id 1 end_log_pos 821 CRC32 0x46f08ed1 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102374/*!*/;

insertinto t6 value(3)

/*!*/;

# at 821

#150717 11:06:14 server id 1 end_log_pos 852 CRC32 0x6eccabd7 Xid = 75158

COMMIT/*!*/;

# at 852

#150717 11:06:36 server id 1 end_log_pos 933 CRC32 0x1d97f072 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102396/*!*/;

BEGIN

/*!*/;

# at 933

#150717 11:06:36 server id 1 end_log_pos 1034 CRC32 0xca5d7197 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102396/*!*/;

deletefrom t6 where id=3

/*!*/;

# at 1034

#150717 11:06:36 server id 1 end_log_pos 1065 CRC32 0xc36e2552 Xid = 75159

COMMIT/*!*/;

# at 1065

#150717 11:21:20 server id 1 end_log_pos 1166 CRC32 0x937167ae Query thread_id=24910 exec_time=0 error_code=0

use `jiaowu`/*!*/;

SET TIMESTAMP=1437103280/*!*/;

createtable t7(id int)

/*!*/;

# at 1166

#150717 11:22:03 server id 1 end_log_pos 1261 CRC32 0xb31be6d1 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437103323/*!*/;

truncatetable t7

/*!*/;

DELIMITER ;

# End of log file

ROLLBACK /* added by mysqlbinlog */;

/*!50003 SETCOMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;

/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;

4. 将输出结果导出到文件

[root@localhostdata]# mysqlbinlog mysql.000007 -o 3 -r /root/test.sql

5. 将指定时间中的内容简单显示

[root@localhostdata]# mysqlbinlog mysql.000007 --start-datetime='2015/07/17 11:06:14'--stop-datetime='2015/07/17 11:12:20'

/*!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

#150717 11:01:43 server id 1 end_log_pos 120 CRC32 0xc3bad8fd Start: binlog v 4, server v 5.6.12-logcreated 150717 11:01:43

# Warning: this binlog is either in use orwas not closed properly.

BINLOG '

F3CoVQ8BAAAAdAAAAHgAAAABAAQANS42LjEyLWxvZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

AAAAAAAAAAAAAAAAAAAAAAAAEzgNAAgAEgAEBAQEEgAAXAAEGggAAAAICAgCAAAACgoKGRkAAf3Y

usM=

'/*!*/;

# at 641

#150717 11:06:14 server id 1 end_log_pos 722CRC32 0x722e009d Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102374/*!*/;

SET @@session.pseudo_thread_id=24910/*!*/;

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=8/*!*/;

SET @@session.lc_time_names=0/*!*/;

SET@@session.collation_database=DEFAULT/*!*/;

BEGIN

/*!*/;

# at 722

#150717 11:06:14 server id 1 end_log_pos 821 CRC32 0x46f08ed1 Query thread_id=24910 exec_time=0 error_code=0

use `test2`/*!*/;

SET TIMESTAMP=1437102374/*!*/;

insert into t6 value(3)

/*!*/;

# at 821

#150717 11:06:14 server id 1 end_log_pos 852 CRC32 0x6eccabd7 Xid = 75158

COMMIT/*!*/;

# at 852

#150717 11:06:36 server id 1 end_log_pos 933 CRC32 0x1d97f072 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102396/*!*/;

BEGIN

/*!*/;

# at 933

#150717 11:06:36 server id 1 end_log_pos 1034 CRC32 0xca5d7197 Query thread_id=24910 exec_time=0 error_code=0

SET TIMESTAMP=1437102396/*!*/;

delete from t6 where id=3

/*!*/;

# at 1034

#150717 11:06:36 server id 1 end_log_pos 1065CRC32 0xc36e2552 Xid = 75159

COMMIT/*!*/;

DELIMITER ;

# End of log file

ROLLBACK /* added by mysqlbinlog */;

/*!50003 SETCOMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;

/*!50530 SET@@SESSION.PSEUDO_SLAVE_MODE=0*/;=0*/;

注意:--start-datetime包含所选择时间,--stop-datatime不包含所选时间,如果只写前者则表明到日志最后结束,如果只写后者则表明从日志最开始时间开始

推荐阅读
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • 在数据分析工作中,我们通常会遇到这样的问题,一个业务部门由若干业务组构成,需要筛选出每个业务组里业绩前N名的业务员。这其实是一个分组排序的 ... [详细]
  • 本文介绍了Perl的测试框架Test::Base,它是一个数据驱动的测试框架,可以自动进行单元测试,省去手工编写测试程序的麻烦。与Test::More完全兼容,使用方法简单。以plural函数为例,展示了Test::Base的使用方法。 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • Oracle分析函数first_value()和last_value()的用法及原理
    本文介绍了Oracle分析函数first_value()和last_value()的用法和原理,以及在查询销售记录日期和部门中的应用。通过示例和解释,详细说明了first_value()和last_value()的功能和不同之处。同时,对于last_value()的结果出现不一样的情况进行了解释,并提供了理解last_value()默认统计范围的方法。该文对于使用Oracle分析函数的开发人员和数据库管理员具有参考价值。 ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • 欢乐的票圈重构之旅——RecyclerView的头尾布局增加
    项目重构的Git地址:https:github.comrazerdpFriendCircletreemain-dev项目同步更新的文集:http:www.jianshu.comno ... [详细]
author-avatar
棋牌
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有