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

开发笔记:???????????????????????????

??????????????????   ????????????   def  &nb

??????????????????   ????????????   def   ??????   ??????   ??????   password   ??????   ??????   

?????????????????????????????????mysql???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

????????????

1 ????????????

???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????database???????????????namespace????????????database?????????????????????????????????database??????????????????????????????????????????employees????????????

mysql> show tables in employees;
+---------------------+
| Tables_in_employees |
+---------------------+
| departments |
| dept_emp |
| dept_manager |
| employees |
| salaries |
| titles |
+---------------------+

????????????????????????????????????

# haitian at haitian-coder.local in /usr/local/var/mysql/employees on git:master ??? [21:19:47]
??? ls
db.opt dept_emp.frm dept_manager.ibd salaries.frm titles.ibd
departments.frm dept_emp.ibd employees.frm salaries.ibd
departments.ibd dept_manager.frm employees.ibd titles.frm

database????????????????????????namespace??????????????????MySQL???database?????????????????????????????????????????????????????????????????????????????????

?????????????????????????????????

???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????user????????????????????????????????????????????????????????????????????????forum??????????????????????????????????????????????????????

??????????????????????????????????????????????????????????????????????????????????????????????????????user?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

????????????

1 ???????????????

??????????????????????????????B-Tree??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????I/O????????????????????????????????????????????????????????????????????????????????????????????????????????????I/O?????????????????????????????????

2 ????????????

?????????

1.??????MySQL????????????????????????????????????????????????????????????Innodb?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

2.????????????????????????????????????????????????

??????????????? ????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

3 ????????????

?????????

1.???????????????????????????table?????????????????????????????????????????????

2.????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

??????????????? ?????????????????????????????????????????????

????????????????????????????????????????????????????????????

????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

???????????????????????????????????????????????????????????????????????????????????????????????????500w?????????????????????Hash????????????Hash????????????

?????????????????????

???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

?????????????????????????????????????????????????????????????????????????????????????????????flickr????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????uuid???????????????????????????????????????????????????Instagram???ID????????????

?????????Hash???

???????????????Hash??????????????????Hash??????????????????????????????????????????????????????????????????????????????Hash???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????ip???Hash??????????????????????????????????????????????????????????????????????????????Hash???

??????MySQL????????????

????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????SQL????????????????????????????????????????????????????????????????????????????????????????????????

??????????????????MySQL?????????????????????????????????MySQL???????????????????????????????????????????????????????????????????????????

1 ??????


???????????????????????????????????????????????????????????????????????????????????????????????????

????????????????????????????????????????????????????????????????????????????????????????????????????????????SQL??????????????????MySQL????????????????????????????????????SQL?????????????????????MySQL???????????????????????????????????????

????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

???????????????

1.???5.6.7????????????????????????????????????1024???????????????5.6.7?????????????????????????????????8192????????????

2.???????????????????????????????????????

3.??????????????????????????????????????????????????????????????????????????????MySQL???????????????????????????

All columns used in the partitioning expression for a partitioned table must be part of every unique key that the table may have.

???????????????????????????????????????????????????????????????MySQL?????????????????????????????????????????????????????????

2 ???????????????


RANGE??????

???????????????????????????????????????????????????????????????PARTITION BY RANGEVALUES LESS THAN?????????????????????COLUMNS????????????RANGE??????????????????????????????????????????????????????????????????

?????????????????????

CREATE TABLE employees (
id INT NOT NULL,
fname VARCHAR(30),
lname VARCHAR(30),
hired DATE NOT NULL DEFAULT ???1970-01-01???,
separated DATE NOT NULL DEFAULT ???9999-12-31???,
job_code INT NOT NULL,
store_id INT NOT NULL
)
PARTITION BY RANGE (store_id) (
PARTITION p0 VALUES LESS THAN (6),
PARTITION p1 VALUES LESS THAN (11),
PARTITION p2 VALUES LESS THAN (16),
PARTITION p3 VALUES LESS THAN MAXVALUE
);

??????TIMESTAMP?????????

CREATE TABLE quarterly_report_status (
report_id INT NOT NULL,
report_status VARCHAR(20) NOT NULL,
report_updated TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)
PARTITION BY RANGE ( UNIX_TIMESTAMP(report_updated) ) (
PARTITION p0 VALUES LESS THAN ( UNIX_TIMESTAMP(???2008-01-01 00:00:00???) ),
PARTITION p1 VALUES LESS THAN ( UNIX_TIMESTAMP(???2008-04-01 00:00:00???) ),
PARTITION p2 VALUES LESS THAN ( UNIX_TIMESTAMP(???2008-07-01 00:00:00???) ),
PARTITION p3 VALUES LESS THAN ( UNIX_TIMESTAMP(???2008-10-01 00:00:00???) ),
PARTITION p4 VALUES LESS THAN ( UNIX_TIMESTAMP(???2009-01-01 00:00:00???) ),
PARTITION p5 VALUES LESS THAN ( UNIX_TIMESTAMP(???2009-04-01 00:00:00???) ),
PARTITION p6 VALUES LESS THAN ( UNIX_TIMESTAMP(???2009-07-01 00:00:00???) ),
PARTITION p7 VALUES LESS THAN ( UNIX_TIMESTAMP(???2009-10-01 00:00:00???) ),
PARTITION p8 VALUES LESS THAN ( UNIX_TIMESTAMP(???2010-01-01 00:00:00???) ),
PARTITION p9 VALUES LESS THAN (MAXVALUE)
);

??????COLUMNS?????????????????????integer??????????????????????????????????????????COLUMNS???????????????????????????????????????????????????????????????????????????????????????????????????

??????DATE???DATETIME?????????

CREATE TABLE members (
firstname VARCHAR(25) NOT NULL,
lastname VARCHAR(25) NOT NULL,
username VARCHAR(16) NOT NULL,
email VARCHAR(35),
joined DATE NOT NULL
)
PARTITION BY RANGE COLUMNS(joined) (
PARTITION p0 VALUES LESS THAN (???1960-01-01???),
PARTITION p1 VALUES LESS THAN (???1970-01-01???),
PARTITION p2 VALUES LESS THAN (???1980-01-01???),
PARTITION p3 VALUES LESS THAN (???1990-01-01???),
PARTITION p4 VALUES LESS THAN MAXVALUE
);

?????????????????????

CREATE TABLE rc3 (
a INT,
b INT
)
PARTITION BY RANGE COLUMNS(a,b) (
PARTITION p0 VALUES LESS THAN (0,10),
PARTITION p1 VALUES LESS THAN (10,20),
PARTITION p2 VALUES LESS THAN (10,30),
PARTITION p3 VALUES LESS THAN (10,35),
PARTITION p4 VALUES LESS THAN (20,40),
PARTITION p5 VALUES LESS THAN (MAXVALUE,MAXVALUE)
);


List??????

???????????????????????????????????????????????????????????????PARTITION BY LIST???VALUES IN???????????????Range????????????????????????COLUMNS????????????List??????????????????????????????????????????????????????????????????

CREATE TABLE employees (
id INT NOT NULL,
fname VARCHAR(30),
lname VARCHAR(30),
hired DATE NOT NULL DEFAULT ???1970-01-01???,
separated DATE NOT NULL DEFAULT ???9999-12-31???,
job_code INT,
store_id INT
)
PARTITION BY LIST(store_id) (
PARTITION pNorth VALUES IN (3,5,6,9,17),
PARTITION pEast VALUES IN (1,2,10,11,19,20),
PARTITION pWest VALUES IN (4,12,13,14,18),
PARTITION pCentral VALUES IN (7,8,15,16)
);

??????????????????????????????????????????????????????????????????????????????????????????????????????

mysql> CREATE TABLE h2 (
-> c1 INT,
-> c2 INT
-> )
-> PARTITION BY LIST(c1) (
-> PARTITION p0 VALUES IN (1, 4, 7),
-> PARTITION p1 VALUES IN (2, 5, 8)
-> );
Query OK, 0 rows affected (0.11 sec)
mysql> INSERT INTO h2 VALUES (3, 5);
ERROR 1525 (HY000): Table has no partition for value 3

??????????????????????????????????????????????????????????????????Innodb?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

????????????IGNORE????????????????????????????????????????????????????????????????????????????????????????????????

mysql> TRUNCATE h2;
Query OK, 1 row affected (0.00 sec)
mysql> SELECT * FROM h2;
Empty set (0.00 sec)
mysql> INSERT IGNORE INTO h2 VALUES (2, 5), (6, 10), (7, 5), (3, 1), (1, 9);
Query OK, 3 rows affected (0.00 sec)
Records: 5 Duplicates: 2 Warnings: 0
mysql> SELECT * FROM h2;
+------+------+
| c1 | c2 |
+------+------+
| 7 | 5 |
| 1 | 9 |
| 2 | 5 |
+------+------+
3 rows in set (0.00 sec)

???Range?????????????????????COLUMNS???????????????????????????????????????

Hash??????

Hash??????????????????????????????????????????????????????????????????????????????Hash?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

CREATE TABLE employees (
id INT NOT NULL,
fname VARCHAR(30),
lname VARCHAR(30),
hired DATE NOT NULL DEFAULT ???1970-01-01???,
separated DATE NOT NULL DEFAULT ???9999-12-31???,
job_code INT,
store_id INT
)
PARTITION BY HASH(store_id)
PARTITIONS 4;


CREATE TABLE employees (
id INT NOT NULL,
fname VARCHAR(30),
lname VARCHAR(30),
hired DATE NOT NULL DEFAULT ???1970-01-01???,
separated DATE NOT NULL DEFAULT ???9999-12-31???,
job_code INT,
store_id INT
)
PARTITION BY HASH( YEAR(hired) )
PARTITIONS 4;

Hash????????????????????????Hash??????????????????????????????????????????MySQL?????????????????????????????????Hash????????????????????????Hash??????????????????????????????????????????LINEAR????????????????????????????????????????????????????????????????????????

CREATE TABLE employees (
id INT NOT NULL,
fname VARCHAR(30),
lname VARCHAR(30),
hired DATE NOT NULL DEFAULT ???1970-01-01???,
separated DATE NOT NULL DEFAULT ???9999-12-31???,
job_code INT,
store_id INT
)
PARTITION BY LINEAR HASH( YEAR(hired) )
PARTITIONS 4;


Key??????


??????KEY???????????????????????????HASH???????????????HASH?????????????????????????????????????????????KEY????????? ??????????????????MySQL ??????????????????MySQL ??????Cluster???????????????MD5()?????????KEY????????????????????????????????????????????????????????????????????????????????? ???????????????????????????????????????PASSWORD()????????????????????????

Key?????????Hash????????????????????????Hash???????????????????????????Hash??????????????????Key???????????????Key???????????????????????????Hash?????????Key???????????????

CREATE TABLE tk (
col1 INT NOT NULL,
col2 CHAR(5),
col3 DATE
)
PARTITION BY LINEAR KEY (col1)
PARTITIONS 3;

??????????????????????????????????????????????????????Key?????????????????????Mysql????????????????????????????????????????????????????????????????????????????????????

?????????

??????????????????????????????????????????????????????????????????????????????

CREATE TABLE ts (id INT, purchased DATE)
PARTITION BY RANGE( YEAR(purchased) )
SUBPARTITION BY HASH( TO_DAYS(purchased) )
SUBPARTITIONS 2 (
PARTITION p0 VALUES LESS THAN (1990),
PARTITION p1 VALUES LESS THAN (2000),
PARTITION p2 VALUES LESS THAN MAXVALUE
);

???

CREATE TABLE ts (id INT, purchased DATE)
PARTITION BY RANGE( YEAR(purchased) )
SUBPARTITION BY HASH( TO_DAYS(purchased) ) (
PARTITION p0 VALUES LESS THAN (1990) (
SUBPARTITION s0
DATA DIRECTORY = ???/disk0/data???
INDEX DIRECTORY = ???/disk0/idx???,
SUBPARTITION s1
DATA DIRECTORY = ???/disk1/data???
INDEX DIRECTORY = ???/disk1/idx???
),
PARTITION p1 VALUES LESS THAN (2000) (
SUBPARTITION s2
DATA DIRECTORY = ???/disk2/data???
INDEX DIRECTORY = ???/disk2/idx???,
SUBPARTITION s3
DATA DIRECTORY = ???/disk3/data???
INDEX DIRECTORY = ???/disk3/idx???
),
PARTITION p2 VALUES LESS THAN MAXVALUE (
SUBPARTITION s4
DATA DIRECTORY = ???/disk4/data???
INDEX DIRECTORY = ???/disk4/idx???,
SUBPARTITION s5
DATA DIRECTORY = ???/disk5/data???
INDEX DIRECTORY = ???/disk5/idx???
)
);

??????????????????????????????????????????????????????????????????????????????????????????????????????????????????SUBPARTITION????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

?????????????????????????????????


????????????????????????????????????

???????????????????????????????????????????????????

???????????????????????????????????????????????????Range??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????100???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????REORGANIZE PARTITION???????????????????????????????????????????????????????????????100??????????????????????????????

?????????????????????????????????????????????Hash???Key?????????????????????????????????????????????

????????????

?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????explain partitions???????????????SQL??????????????????????????????

????????????????????????where???????????????????????????

?????????salaries????????????

mysql> show create table salariesG;
*************************** 1. row ***************************
Table: salaries
Create Table: CREATE TABLE `salaries` (
`emp_no` int(11) NOT NULL,
`salary` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`from_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
/*!50100 PARTITION BY RANGE (year(from_date))
(PARTITION p1 VALUES LESS THAN (1985) ENGINE = InnoDB,
PARTITION p2 VALUES LESS THAN (1986) ENGINE = InnoDB,
PARTITION p3 VALUES LESS THAN (1987) ENGINE = InnoDB,
PARTITION p4 VALUES LESS THAN (1988) ENGINE = InnoDB,
PARTITION p5 VALUES LESS THAN (1989) ENGINE = InnoDB,
PARTITION p6 VALUES LESS THAN (1990) ENGINE = InnoDB,
PARTITION p7 VALUES LESS THAN (1991) ENGINE = InnoDB,
PARTITION p8 VALUES LESS THAN (1992) ENGINE = InnoDB,
PARTITION p9 VALUES LESS THAN (1993) ENGINE = InnoDB,
PARTITION p10 VALUES LESS THAN (1994) ENGINE = InnoDB,
PARTITION p11 VALUES LESS THAN (1995) ENGINE = InnoDB,
PARTITION p12 VALUES LESS THAN (1996) ENGINE = InnoDB,
PARTITION p13 VALUES LESS THAN (1997) ENGINE = InnoDB,
PARTITION p14 VALUES LESS THAN (1998) ENGINE = InnoDB,
PARTITION p15 VALUES LESS THAN (1999) ENGINE = InnoDB,
PARTITION p16 VALUES LESS THAN (2000) ENGINE = InnoDB,
PARTITION p17 VALUES LESS THAN (2001) ENGINE = InnoDB,
PARTITION p18 VALUES LESS THAN MAXVALUE ENGINE = InnoDB) */

?????????????????????????????????????????????partitions??????????????????????????????

mysql> explain partitions select * from salaries where salary > 100000G;
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: salaries
partitions: p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,p16,p17,p18
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 2835486
Extra: Using where

?????????where???????????????????????????????????????????????????????????????????????????

mysql> explain partitions select * from salaries where salary > 100000 and from_date > ???1998-01-01???G;
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: salaries
partitions: p15,p16,p17,p18
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 1152556
Extra: Using where

????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

mysql> explain partitions select * from salaries where salary > 100000 and year(from_date) > 1998G;
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: salaries
partitions: p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,p16,p17,p18
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 2835486
Extra: Using where


??????????????????????????????

  • ??????????????????count???sum???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????


Queries involving aggregate functions such as SUM() and COUNT() can easily be parallelized. A simple example of such a query might be SELECT salesperson_id, COUNT(orders) as order_total FROM sales GROUP BY salesperson_id;. By ???parallelized,??? we mean that the query can be run simultaneously on each partition, and the final result obtained merely by summing the results obtained for all partitions.



  • ???????????????????????????????????????????????????????????????????????????????????????????????????


  • ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????


  • ???????????????????????????????????????????????????????????????????????????????????????



????????????????????????

1 tddl??????

tddl?????????????????????matrix???group???atom??????

matrix???



Sql??????->??????????????????->????????????->????????????

group???





??????????????????????????????HA???????????????HA?????????slave??????

atom???

1 ????????????????????????

2 jboss?????????, ip port ????????????????????? ???????????????

3 Thread count??????,?????? ?????????????????????,?????????????????????????????????

4 ??????????????????SQL??????

5 ???????????????????????????

tddl ?????????????????????

????????????tddl?????????????????????????????????????????????????????????id??????????????????????????????????????????????????????. ????????????????????????????????????????????????????????????????????????id.

???????????????????????????????????????1??????????????????2???????????????3???????????????

tddl???????????????????????????????????????????????????????????????????????? ????????????????????? ?????????????????????????????????????????????????????????1000???
























groupvalue
group_00
group_11000
group_22000
group_33000






???????????????????????????????????????4???group??????????????????????????????value+?????????id???????????????group_1??????1000???1000+1000???id??????????????????????????????????????????????????????????????????????????????????????????
























groupvalue
group_00
group_15000
group_22000
group_33000

??????????????????????????????group???????????????value+group?????????*?????????

 




推荐阅读
  • 本文提供了关于数据库设计的建议和注意事项,包括字段类型选择、命名规则、日期的加入、索引的使用、主键的选择、NULL处理、网络带宽消耗的减少、事务粒度的控制等方面的建议。同时还介绍了使用Window Functions进行数据处理的方法。通过遵循这些建议,可以提高数据库的性能和可维护性。 ... [详细]
  • 本文介绍了一个适用于PHP应用快速接入TRX和TRC20数字资产的开发包,该开发包支持使用自有Tron区块链节点的应用场景,也支持基于Tron官方公共API服务的轻量级部署场景。提供的功能包括生成地址、验证地址、查询余额、交易转账、查询最新区块和查询交易信息等。详细信息可参考tron-php的Github地址:https://github.com/Fenguoz/tron-php。 ... [详细]
  • 本文讨论了在使用Git进行版本控制时,如何提供类似CVS中自动增加版本号的功能。作者介绍了Git中的其他版本表示方式,如git describe命令,并提供了使用这些表示方式来确定文件更新情况的示例。此外,文章还介绍了启用$Id:$功能的方法,并讨论了一些开发者在使用Git时的需求和使用场景。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • ALTERTABLE通过更改、添加、除去列和约束,或者通过启用或禁用约束和触发器来更改表的定义。语法ALTERTABLEtable{[ALTERCOLUMNcolu ... [详细]
  • Ihaveaworkfolderdirectory.我有一个工作文件夹目录。holderDir.glob(*)>holder[ProjectOne, ... [详细]
  • HashMap的扩容知识详解
    本文详细介绍了HashMap的扩容知识,包括扩容的概述、扩容条件以及1.7版本中的扩容方法。通过学习本文,读者可以全面了解HashMap的扩容机制,提升对HashMap的理解和应用能力。 ... [详细]
  • 本文讨论了将HashRouter改为Router后,页面全部变为空白页且没有报错的问题。作者提到了在实际部署中需要在服务端进行配置以避免刷新404的问题,并分享了route/index.js中hash模式的配置。文章还提到了在vueJs项目中遇到过类似的问题。 ... [详细]
  • 本文整理了Java中org.apache.hadoop.hive.ql.plan.ExprNodeColumnDesc.getTypeInfo()方法的一些代码示例,展 ... [详细]
  • 【Mysql】九、Mysql高级篇 索引
    MYSQL索引一、什么是索引?二、索引数据结构1、mysql数据库的四种索引2、BTREE结构三、索引分类、创建索引、查看索引1、单值索引2、复合索引3、函数索引4、 ... [详细]
  • 本文整理了Java中org.apache.activemq.util.ByteArrayInputStream.<init>()方法的一些代码示例,展示了 ... [详细]
  • MybatisPlus入门系列(13) MybatisPlus之自定义ID生成器
    数据库ID生成策略在数据库表设计时,主键ID是必不可少的字段,如何优雅的设计数据库ID,适应当前业务场景,需要根据需求选取 ... [详细]
  • 小白的Python 学习笔记(八)推导式详解
    大家好,今天我总结一下Python的推导式,首先让我们来看定义推导式(comprehensions)是Python的一种独有特性,是可以从一个数据序列构建另一个新的数据序列的结构体 ... [详细]
author-avatar
kingsharedn_594
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有