DataBase
文章平均质量分 61
数据库相关
梦李寻欢
纸上得来终觉浅,绝知此事要躬行.
展开
-
数据库性能测试2:内存数据库
在内存模式下(相较与文件模式),duckdb与sqlite的写入性能都有较大的提升,而查询性能提升不大,可能是因为文件模式下,两者都会有缓存的原因。因为本次测试引入了我自己的一套内存数据库,相较于上一次的测试,本次对所有数据库增加了一个合约代码的索引,增加索引后,Duckdb的写入性能下降比较严重,而查询性能几乎没变。查询性能对比文件模式下,相差也不大,duckdb的内存模式下跟文件模式下查询耗时基本持平,sqlite内存模式比文件模式每次大约快1ms(约10%-25%)的样子。原创 2024-08-29 13:35:38 · 531 阅读 · 0 评论 -
数据库性能测试:Mysql、Sqlite、Duckdb
之前有创建两个额外的索引,同时那会还使用的是duckdb C++版本的API,于是乎,我在执行写入数据时发现写入速度成加速下降,最终写了一超过14个小时,才写到500万条数据的样子。我这边测试从创建表开始,首先是将tick数据写入表中,然后根据主键字段的子集(主键是四个字段,我取了其中的三个)进行查询10次,然后对全表进行一次查询。从索引查询来看,duckdb平均在10ms以下,sqlite不太稳定,有一些在10ms以下,也有一些到20ms级别,而mysql则是100ms级。原创 2024-08-12 15:05:10 · 1329 阅读 · 0 评论 -
使用duckdb
在读取该字段时其不能直接使用 duckdb_decimal 类型进行读取,因为其数据块中存储的字段的实际类型是int16,int32,int64或hugeint,具体使用那种类型的整型与定义的decimal的宽度有关,需要使用对应的整型类型来读取,然后通过对 duckdb_decimal 类型构造复制来获得对于的demical类型,要转为double类型,还需要调用 duckdb_decimal_to_double 函数进行转换。最近研究了一下duckdb的使用,也是踩了一些坑,这里记录一下。原创 2024-08-12 14:07:10 · 612 阅读 · 0 评论 -
Mysql配置文件
此版本mysql配置文件位置:/etc/mysql/mysql.conf.d/mysqld.cnf。现在是要的Mysql版本:8.0.36-0ubuntu0.20.04.1。原创 2024-02-20 10:55:33 · 155 阅读 · 0 评论 -
Mysql sql_mode参数配置
从错误信息可以看出是因为设置了sql_mode=ONLY_GROUP_BY参数导致的,看起来这个参数是将select 的内容严格限制在Group By 的参数集中。要解决这个问题,需要把这个参数移除掉。ONLY_FULL_GROUP_BY:对于GROUP BY聚合操作,如果在SELECT中的列,没有在GROUP BY中出现,那么这个SQL是不合法的,因为列不在GROUP BY从句中。把sql_mode参数里面ONLY_FULL_GROUP_BY移除掉,这种方式只能临时解决,如果mysql重启后,就会失效。原创 2023-12-23 12:01:07 · 257 阅读 · 0 评论 -
ubuntu 安装与使用mysql
假如你在给用户'pig'@'%'授权的时候是这样的(或类似的):GRANT SELECT ON test.user TO 'pig'@'%',则在使用REVOKE SELECT ON *.* FROM 'pig'@'%';这里解决方式是,先创建另外一个用户比如说test,然后给test所有权限,这时可以通过navicat使用test用户登录,然后修改root用户的插件为:caching_sha2_password,并设置密码。DDL主要是用在定义或改变表的结构,数据类型,表之间的链接和约束等初始化。原创 2023-03-19 17:30:27 · 1539 阅读 · 0 评论 -
如何在配置文件设置mysql 8的密码验证插件参数
确实没有validate_password这个参数,只有validate_password.check_user_name,validate_password.policy这样的参数。在网上查到都很多资料都是设置 validate_password这个参数,但是这个参数设置后,mysql就启动不了了,不知道是不是mysql 8这个版本使这个参数无效了。发现length被设置为了4,这个参数最小值是4。在测试环境中,密码验证插件这个功能挺烦的,不方便设置简单密码,于是尝试想将其关闭。原创 2023-03-19 13:29:26 · 910 阅读 · 0 评论 -
Ubuntu 安装MysqlConnector
回到下载首页,能看到跟community相关的有一个 Mysql Community Server,点进去后选好操作系统与版本号,搜了一下,找到了 mysql-community-client-plugins 的下载包:mysql-community-client-plugins_8.0.31-1ubuntu20.04_amd64.deb。一个成功了,一个失败。然而在刚才的下载页面没有找到 mysql-community-client-plugins 的相关下载。编译、链接、运行结果都正确。原创 2022-11-14 18:11:53 · 2177 阅读 · 1 评论 -
数据库存储过程的单元测试工具
接着昨天写完了数据库数据录入与核对之后,今天写了个数据库存储过程单元测试的小工具,与大家分享一下。github:https://github.com/xunmeng2002/python/tree/master/dbtest本模块依赖于昨天完成的check_db模块:csv解析与db数据检查本模块写了两个文件:test_struct.py 包含测试组件结果、测试用例结构及相关函数,ru...原创 2019-05-17 18:17:52 · 778 阅读 · 0 评论 -
csv解析与db数据检查
最近在做单元测试,发现与数据库关联的程序在测试后,数据的核对没有比较趁手的工具,于是决定自己写一个。这个模块实现了几个小功能:对csv文件解析,将csv文件导入到对应的数据库表,将csv文件与数据库的数据进行核对。https://github.com/xunmeng2002/python/tree/master/source_py主要功能写了两个文件:csv_parse.p...原创 2019-05-16 18:22:15 · 378 阅读 · 0 评论