mysql字段aes加解密

HEX()函数;二进制转换为16进制,方便存储

加密:加密对象 11 加密密钥:e10adc3949ba59abbe56e057f20f883e  结果:A13015D303BC1548608D6B4B8E900515

SELECT HEX(AES_ENCRYPT(’11’,’e10adc3949ba59abbe56e057f20f883e’));

解密:解密对象:A13015D303BC1548608D6B4B8E900515 解密密钥:e10adc3949ba59abbe56e057f20f883e 结果:11

SELECT AES_DECRYPT(UNHEX(‘A13015D303BC1548608D6B4B8E900515′),’e10adc3949ba59abbe56e057f20f883e’);

mysql更新大数据表-策略

大批量更新数据如果循环单条插入效率低下,时间大多耗费在mysql连接上,考虑减少链接。

方法1;使用CASE WHEN 拼成一条sql执行,减少数据库链接

UPDATE mytable SET
    myfield = CASE id
        WHEN 1 THEN 'value'
        WHEN 2 THEN 'value'
        WHEN 3 THEN 'value'
    END
WHERE id IN (1,2,3)

方法2;复制原表建立新表,处理好需要更新的数据,插入数据到新表,删除老表,改名新表

使用:

1,CREATE TABLE a6 LIKE a1;//复制原表结构和索引,不包含数据
2,CREATE TABLE a6 AS SELECT * FROM a1 ;//复制原表结构和数据,不包含索引

 

kafka启动报:127.0.0.1:2181: 拒绝连接

原因:因为zookeeper没正常启动导致,

解决:

1.zookeeper使用#./zkServer.sh start-foreground报

main:ZooKeeperServerMain@85] – Unable to start AdminServer, exiting abnormal

查询发现是端口被占用了

2.zoo.cfg文件增加配置:admin.serverPort=9099

3.重新启动zookeeper,启动成功

4.启动kafka成功

5.zookeeper端输入jps

显示kafaka已启动

 

zookeeper启动命令#./bin/zkServer.sh start

kafka启动命令#./bin/kafka-server-start.sh config/server.properties

kafka后台启动#./bin/kafka-server-start.sh -daemon ../config/server.properties

 

php-mysql-es数据写入效率

通过分析得出,查询和循环处理占时短,大部分时间花费在了es的bulk插入上,调优方向就是优化es批量

#sleep(1)的情况
100万数据 读5万 写1万 201秒
100万数据 读5万 写5万 207秒
100万数据 读10万 写1万 203秒
100万数据 读10万 写5万 203秒
100万数据 读10万 写10万 219秒
100万数据 读1万 写1万 344秒

#不加sleep的情况
100万数据 读5万 写1万 205秒
100万数据 读5万 写5万 209秒
100万数据 读10万 写1万 208秒
100万数据 读10万 写5万 198秒
100万数据 读10万 写10万 200秒
100万数据 读1万 写1万 227秒
100万数据 读1万 写5000 226秒

mysql查询效率还可以,es批量写入造成缓慢:
100万数据查询插入消耗250秒

调增’refresh_interval’ => ’30s’,100万数据查询插入230

调增’refresh_interval’ => ’60s’,100万数据查询插入221

调增’refresh_interval’ => ’60s’,100万数据查询插入229

每次插入1000查询插入240

100万数据查询12秒

100万数据查询逻辑循环18秒

500万查询73

500万查询逻辑循环92