
数据库
方元之外
这个作者很懒,什么都没留下…
展开
-
oracle 查杀死锁的语句
select distinct 'alter system kill session ''' || t2.sid || ',' || t2.serial# || ''' immediate;' from gv$locked_object t1, gv$session t2, dba_objects t3 where t1.session_id = t2.sid and t1.object_id = t3.object_id;原创 2021-11-19 15:22:34 · 916 阅读 · 0 评论 -
oracle 存储过程 hello world
oracle 存储过程 作为个人学习存储的一个记录,如果你是一个老手,只是忘记了部分关键词或者语法,那么本章节不适合你。如果你是第一次学习存储过程,那么下面的内容可以花几分钟看下。 create procedure TEST_FANGYUAN_TEST as NAME VARCHAR2(100); begin NAME := 'hello world'; dbms_output.put_line(NAME); ...原创 2021-04-27 16:28:48 · 167 阅读 · 0 评论 -
redis深度历险06-key和scan
redis深度历险06-keys和scankeyskeys * --获得所有的keykeys f* --获得f开头的keykeys f*f --获得f开头,f结尾的key此方法的缺点没有分页复杂度o(n),造成卡顿scan --游标遍历复杂度o(n),但是通过游标分布,不会阻塞。提供limit参数提供模式匹配的方式服务器不需要保存游标状态,游标的唯一状态就是scan返回给客户端的游标整数返回的结果可能重复,需要客户端去重遍历过程中如果数据修改,改动后的原创 2020-07-27 22:44:15 · 202 阅读 · 0 评论 -
redis深度历险05-GeoHash
redis深度历险05-GeoHashGeo基本用法geoadd-增加geoadd指令携带集合名称以及多个经纬度名称三元组geoadd company 116.48105 39.996794 xiaomigeodist -距离geodist 计算两个元素之间的距离geodist company xiaomi huawei kmgeopos -元素位置geopos 可以获取任意元素的经无敌坐标geopos company xiaomigeohash -获得元素的hash值原创 2020-07-27 22:43:45 · 162 阅读 · 0 评论 -
redis深度历险04-hyperLogLog
Redis深度历险04-HyperLogLogHyperLogLog的作用类似set集合,去重和计数的作用。HyperLogLog牺牲约1%的准确性,大大提高了空间和时间的利用率pfadd往集合里面添加数据,且自动去重pfcount统计集合里面元素的个数pfadd listA 1pfadd listA 2pfadd listA 1pfcount listApfmerge用于把对个pf对象加在一起形成一个新的pf值...原创 2020-07-22 22:54:19 · 125 阅读 · 0 评论 -
redis深度历险03-位图
redis深度历险03-位图bitredis位图数据结构,非零即一,每个只占一位,一个字节8位。位图其实就是普通的字符串,就是byte数组。可以通过getbit setbit等将byte数组看成位数组 来处理基本用法h字母的二进制是01101000e字母的二进制是01100101对于字母h而言,索引从0开始。需要把第 1 2 4为设置成1零存整取setbit s 1 1setbit s 2 1setbit s 4 1get s --- 得到h字母零存零原创 2020-07-22 22:53:54 · 160 阅读 · 0 评论 -
redis深度历险02-分布式锁
redis深度历险02-分布式锁分布式锁的本质就是在redis里面战一个坑,当别的进程进来占坑时,发现那里已经有人了,就只好放弃或者稍后尝试占坑一般用sexnx(set if not exists 成功返回1,失败返回0)方案一## setnx lock trueok.....donging....del lock问题:如果指定过程中,出现异常,导致无法del 锁。就会死锁了方案二 自动释放锁给锁加一个过期时间,即使中途异常,也能自动释放锁setnx lockFlag t原创 2020-07-22 22:53:05 · 146 阅读 · 0 评论 -
redis深度历险01-基本数据结构小结
Redis深度历险-基本数据结构小结Redis基础数据结构String键值对set k v --保存相应键值对get k – 通过key 得到valueexists k --判断key 是否存在 存在返回1del k --删除相应数据,删除成功返回1批量键值对mset k1 v1 k2 v2 --批量保存 k1-v1 k2-v2 键值对mget k1 k2原创 2020-07-16 22:34:42 · 135 阅读 · 0 评论 -
redis5.0集群搭建
1 简单集群搭建 下载 解压make redis后。会在src下生成 redis-server等脚本文件。 新建两个文件夹,分别为master和slave。然后复制redis.conf到文件夹下面。修改master文件。bind 0.0.0.0daemonize yes 修改slave文件bind 0.0.0.0 daemonize ye...原创 2020-02-28 11:08:14 · 170 阅读 · 0 评论 -
查询mysql 库和表占的大小
use information_schema;select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables;select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables where table_schema='库名'...转载 2019-06-21 16:09:19 · 166 阅读 · 0 评论 -
论数据库的索引
需要对数据库索引有基础的理解索引通常提升查找性能,也会降低写性能。来自《java特种兵》--------------------------------------大部分数据库的常规索引都是B+树来实现(一部分非主流用hash结构)。索引也是数据,也会存储起来。索引并不会存储整行数据(除非是索引组织表,不过有的数据库对于有PK的表默认就是索引组织表),而是存储索引所对应的字段内容,然后通过某些标识...翻译 2018-04-12 11:52:51 · 186 阅读 · 0 评论 -
删库到跑路
大家都不想发生删库到跑路的事情吧 那么如何预防或者有效的恢复相关手段呢? 1 数据库直接操作时尽量先敲个begin; 确认没问题了再commit;2 重要语句 update delete 还是先写where吧 3 开启 bin-log 服务。。可通过该服务恢复数据 ...原创 2018-02-28 13:32:15 · 3405 阅读 · 0 评论 -
mysql表的复制和自我复制
有时候一些特别的需求,需要复制表之类的 表的迁移---表的结构,数据原封不动的复制到另外一张表create table tableto as select * from tablefrom;tableto是目的的的表,tablefrom是数据源的表-------------------------------------原创 2017-12-27 15:54:50 · 538 阅读 · 0 评论 -
ubuntu 14.04 下安装mongodb
1 进入root权限,下载安装apt-get install mongodb2pgrep mongo -l 查看是否启动 (是英文字母l不是数字1),若有显示,则代表启动。否则没有启动,我的就是没有启动。3需要手动启动,但是安装位子难找。通过命令locate mongo查看mongodb文件分布一个是配置原创 2017-12-26 10:56:56 · 1347 阅读 · 0 评论 -
mysql执行计划
mysql执行计划可用于分析mysqlsql语句的执行流程。这个sql语句是怎么找到结果的---使用navicat for mysql 工具来分析--------------------------------------------------------表结构如下,等下就查询english这行---------------原创 2017-12-20 11:58:16 · 257 阅读 · 0 评论