摘要:有时,你会看到python中定义函数的时候带有两个奇怪的参数:*args、**kwargs。如果你曾经想知道它们是干什么的,或者想知道你的IDE为什么在main()函数中定义它们,那么本文可以帮助到你。本文会告诉你在python中如何使用args和kwargs,来增加函数的灵活性。 1.传递多个参数 阅读全文
MySQL8新特性(2)--mysql的升级过程
2019-09-05 15:17 by abce, 1303 阅读, 0 推荐, 收藏, 编辑
摘要:在之前的版本中,安装新的版本mysql之后,mysql server在下一次启动时,会自动升级数据字典表,然后dba需要执行mysql_upgrade手动升级mysql schema中的系统表,以及其他schemas如sys schema、普通用户schemas下的表。 从mysql 8.0.16开 阅读全文
MySQL8新特性(1)--原子DDL
2019-09-05 13:55 by abce, 697 阅读, 0 推荐, 收藏, 编辑
摘要:mysql 8支持原子ddl。一个原子DDL语句包含数据字典更新、存储引擎操作、二进制日志写,事务要么被提交,应用修改被持持久化到数据字典、存储引擎和二进制日志,或者被回滚。 原子ddl是随着mysql 8中数据字典的引入被引入的。在早期版本,元数据被存储在元数据文件中,非事务型表中,存储引擎指定的 阅读全文
PostgreSQL中的一些日志
2019-09-01 11:09 by abce, 1076 阅读, 0 推荐, 收藏, 编辑
摘要:1.Write Ahead Log(WAL日志)预写日志(WAL)是保证数据完整性的标准方法。在有关交易处理的大多数(如果不是全部)书籍中都可以找到详细说明。 简而言之,WAL的核心概念是,只有在记录了对这些更改之后,即在描述更改的日志记录已刷新到永久存储之后,才写入对数据文件(表和索引所在的位置) 阅读全文
PostgreSQL的表空间
2019-08-21 08:58 by abce, 1448 阅读, 1 推荐, 收藏, 编辑
摘要:PostgreSQL中的表空间允许数据库管理员在文件系统中定义可以存储表示数据库对象的文件的位置。创建后,可以在创建数据库对象时按名称引用表空间。 通过使用表空间,管理员可以控制PostgreSQL安装的磁盘布局。这至少在两个方面很有用。首先,如果初始化集群的分区或卷空间不足并且无法扩展,则可以在不 阅读全文
PostgreSQL体系架构与内存结构
2019-08-13 17:47 by abce, 769 阅读, 0 推荐, 收藏, 编辑
摘要:PostgreSQL体系架构 PostgreSQL的内存结构 阅读全文
PostgreSQL中的The Oversized-Attribute Storage Technique(TOAST:超大属性存储技术)
2019-08-12 17:06 by abce, 700 阅读, 0 推荐, 收藏, 编辑
摘要:PostgreSQL使用固定的页面大小(通常为8kB),并且不允许元组跨越多个页面。因此,不可能直接存储非常大的字段值。为了克服这种限制,将大字段值压缩和/或分解成多个物理行。这对用户来说是透明的,对大多数后端代码只有很小的影响。该技术被称为TOAST。TOAST架构还用于改进内存中大数据值的处理。 阅读全文
PostgreSQL中的pg_relation_filepath()函数
2019-08-12 10:16 by abce, 1784 阅读, 0 推荐, 收藏, 编辑
摘要:pg_relation_filepath()类似于pg_relation_filenode(),但它返回关系的整个文件路径名(相对于数据库集群的数据目录PGDATA)。 阅读全文