随笔分类 - 数据库
数据库
摘要:redis删除单个key和多个key,ssdb会落地导致重启redis无法清除缓存,需要针对单个key进行删除
key是在生成的时候按规则添加的,一般都是方法名+ID,或者code,或者序列化后的名称(中文字符会有问题)
阅读全文
摘要:B轮公司技术问题列表
1、异构系统的接口对接
2、服务接口的监控,状态的追踪
3、外网数据安全
4、分布式事务的处理
5、数据库优化策略
。。。。。。
阅读全文
摘要:Google、亚马逊、微软 、阿里巴巴开源软件一览
大公司为什么要发布开源项目?一是开源能够帮助他人更快地开发软件,促进世界创新,主要是社会价值层面的考虑。二是开源能够倒逼工程师写出更好的代码。三是开源能够更有效利用社区的力量,帮助企业一起解决难题。开源,让世界更美好。
Google,亚马逊,微软,和阿里巴巴都是体量最大的几个互联网公司,也都是作为云厂商的几个大玩家。 在这几家技术公司的合力推动之下,云计算的时代真正来到了我们身边。优秀的技术公司不会缺少自己的技术思考,这些思考有些深藏在云端,我们难以窥见,但不少也会凝结成开源软件这种最能体现互联网技术创新的人类文明成果,推动整个行业的进步。
下面就让我们一起观察这几家公司的重点开源项目,来尝试一探行业未来的风向。如果下文列出的开源项目代码仓库托管在Github平台,本文还会列出该项目的Github Star数,这是评判一个开源项目受关注程度的最好指标。
阅读全文
摘要:如何禁用MySql总是定时弹出一个MySQLInstallerConsole.exe的窗口
禁用mysql总是弹出一个安装框的定时任务
这一条安装命令,Installing MySQL 5.6.21 using MySQLInstallerConsole.exe win10状态下,从开始-->所有应用--->管理工具--->任务计划程序-->左侧任务计划程序库文件夹(或直接用快捷方式win+Q 输入 任务计划程序 点击上面的程序进入),展开文件夹-->mYsql子文件夹installer,点击。在右侧窗口右键点击鼠标,选择“禁用”即可
阅读全文
摘要:数据在千万级别上进行全文检索有哪些技术?强大的大数据全文索引解决方案-ClouderaSearch
1.lucene (solr, elasticsearch 都是基于它)
2.sphinx
3.elasticsearch 简单易用。天生分布式。
4.HBasene(注意HBase后面加了ne就是 HBase+lucene)。
solr的请求基本都封装为了http,如果是http服务效率不好呢绕过它,直接透过lucene的API进行查询。
但是solr云的方式部署进行了负载均衡,效率不会太差。
应用查询条件最多20个左右,10个solr节点,每个节点的数据1亿左右。
但是索引不是写在本地磁盘,是写在hdfs上的。
阅读全文
摘要:服务器数据库不用开通远程连接通过工具在本地连接操作的方法
服务器数据库不用开通远程连接也可以通过工具在本地连接操作的
用ssh连接服务器,它连接上服务器之后,再通过MySQL页面 进行本地连接数据库
最好配置一下文件登录不用密码更安全些
阅读全文
摘要:阿里云OneinStack数据库相关
必须进入oneinstack目录下执行相关命令
数据存储目录: 数据库(MySQL):/data/mysql
cd /root/oneinstack #必须进入oneinstack目录下执行
grep dbrootpwd options.conf #显示数据库root密码
dbrootpwd='123456'
为了安全考虑,OneinStack仅允许云主机本机(localhost)连接数据库,如果需要远程连接数据库,需要如下操作:
打开iptables 3306端口
# iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
# service iptables save
#保存iptables规则
#iptables -nvL
#查看自己配置的iptables
阅读全文
摘要:给MD5加上salt随机盐值加密算法实现密码安全的php实现
如果直接对密码进行散列,那么黑客可以对通过获得这个密码散列值,然后通过查散列值字典(例如MD5密码破解网站),得到某用户的密码。
加上salt后就会难上很多可以一定程度上解决问题,即便是黑客获得了其中的salt和最终密文,破解也是相当麻烦的。
加盐值是随机生成的一组字符串,可以包括随机的大小写字母、数字、字符,位数可以根据要求而不一样,使用不同的加盐值产生的最终密文是不一样的
PS: 一般都是加密后的数据再存入到数据库的,安全的数据是不可逆的,即数据库里面的数据即使你知道他是通过md5,加盐md5,base64等算法加密进去的也不可直接反推出内容,一般是通过输入的内容加上加密算法后得出的跟数据库里面对比。很多破解是用社工库进行撞库对比,你的帐号密码在其他不安全网站给破解后拿来到其他网站尝试撞库。
阅读全文
摘要:人工智能大数据,公开的海量数据集下载,ImageNet数据集下载,数据挖掘机器学习数据集下载
ImageNet挑战赛中超越人类的计算机视觉系统,百度云盘资源下载链接
公开的海量数据集 Public Research-Quality Datasets
Robert Seaton整理了100多个最有趣的数据集,其中包括Jeopardy真题,死囚的最后一句话,20万个Eclipse Bug,足球比赛相关,柏拉图式的爱情,太阳系以外的行星,11.3万个恐怖事件等。
阅读全文
摘要:php版redis插件,SSDB数据库,增强型的Redis管理api实例
SSDB是一套基于LevelDB存储引擎的非关系型数据库(NOSQL),可用于取代Redis,更适合海量数据的存储。
另外,rocksdb是FB在LevelDB的二次开发版本,因此也存在使用RocksDB作为存储引擎的SSDB版本,可以参考这里。
SSDB PHP API Documentation 官方api文档
http://ssdb.io/docs/php/index.html
SSDB入门基础-中文版pdf教程
http://ssdb.io/ssdb-get-started.pdf
php的redis原生插件有不少bug,建议使用ssdb的
阅读全文
摘要:php删除多重数组对象属性,重新赋值的方法
实例:sphinx搜索出来的结果,要去掉某个属性值:
方法一,直接删除属性:
foreach ( $query['matches'] as $k => $val ) {
unset($query['matches'][$k]["attrs"]["content"]);
unset($query['matches'][$k]["attrs"]["remarks"]);
}
PS:要操作多重数组的关键是foreach循环里用 as $k => $val 取得具体元素的下标,否则无法操作。
阅读全文
摘要:mysql字段varchar区分大小写utf8_bin、utf8_general_ci编码区别
在mysql中存在着各种utf8编码格式:
utf8_bin将字符串中的每一个字符用二进制数据存储,区分大小写。
utf8_genera_ci不区分大小写,ci为case insensitive的缩写,即大小写不敏感。
阅读全文
摘要:php原子操作,文件锁flock,数据库事务
php没有继承posix标准支持的unix锁,只封装了一个linux系统调用flock(信号量也能做成锁),按理也是可以使用锁机制的,虽然效率低一点。
php脚本是运行在fastcgi容器中,而fastcgi是多进程的,所以如果php程序访问了临界资源,势必造成程序结果的不正确性。
估计还要考虑下fastcgi容器的问题
用php文件锁flock 我们试了不行,还是用C++队列
用C++监听了一个端口,直接接收HTTP包,然后返回HTTP格式的包,PHP程序中用curl访问我这个C程序.
阅读全文
摘要:Thinkphp用exp表达式执行mysql语句,查询某字段不为空is not null,自动增值
Thinkphp 的文档经常不够完整的表达MYSQL的各种组合,is not null在thinkphp中就不能用“=” 或者简单的eq等来表示。
TP支持MYSQL不为空的array编写方式:
$data = D('tablename');
$map = array();
$map['pic'] = array('exp','is not null');
其中的exp表示MYSQL的表达式查询,支持各种MYSQL语句的添加
该写法同时支持在update中对字段进行自动增值
比如:SQL语句 update table set data=data+1;
用THINKPHP可以表达为
$data['data'] = array('exp','data+1');
$table->where(1)->save($data);
阅读全文
摘要:mysql对比表结构对比同步,sqlyog架构同步工具
对比后的结果示例:执行后的结果示例:
点击:"另存为(S)" 按钮可以把更新sql导出来。
阅读全文
摘要:mysql datetime设置now()无效,直接用程序设置默认值比较好
mysql datetime设置now()无效的,没有此用法,datetime类型不能设置函数式默认值,只能通过触发器等来搞。
想设置默认值,只能使用timestamp类型,然后默认值设置为:CURRENT_TIMESTAMP
阅读全文
摘要:MySQL数据库读写分离、读负载均衡方案选择
MySQL Cluster,Galera Cluster有一定的问题和局限性,建议采用360开源的高可用DB代理层Atlas+Keepalived实现MySQL读写分离、读负载均衡。
阅读全文
摘要:#左连接LEFT JOIN 连接自己时的查询结果测试
#左连接LEFT JOIN 连接自己时的查询结果(都会出现两个重复字段),两个表都有as后只能查询相等条件merchant_shop_id非null的数据
SELECT * FROM adm_keeshow_port as k LEFT JOIN adm_keeshow_port as p ON k.merchant_shop_id = p.merchant_shop_id WHERE p.`partner_id` = '25'
#只有一个表用as方法,用k.`partner_id`时merchant_shop_id为null的都会查询出来,但后面一个表的字段内容只有merchant_shop_id不为null的数据不为null,其他都为null
SELECT * FROM adm_keeshow_port as k LEFT JOIN adm_keeshow_port ON k.merchant_shop_id = adm_keeshow_port.merchant_shop_id WHERE k.`partner_id`
阅读全文
摘要:PowerDesigner逆向操作(从mysql5.0生成数据库的物理模型),把备注Comment写到name中,pdm文件导出为rtf文件另存为.doc的word文档
阅读全文
摘要:mysql count group by统计条数方法
mysql 分组之后如何统计记录条数? gourp by 之后的 count,把group by查询结果当成一个表再count一次
select count(*) as count from
(SELECT count(*) FROM 表名 WHERE 条件 GROUP BY id ) a;
实战例子:
select
count(*) as total
from (select count(*) from users group by user_id) u
阅读全文