0%

最近在找 Elasticsearch mysql 的同步方案

我用的是官方的连接器

这个是收费的,目前用着还可以

参考

Event Scheduler 在后台运行并管理计划事件的执行。事件调度器用于调度在指定时间和间隔内在 MySQL 数据库中执行的作业和任务。

启用事件调度程序

SET GLOBAL event_scheduler = ON;
SET @@GLOBAL.event_scheduler = ON;
SET GLOBAL event_scheduler = 1;
SET @@GLOBAL.event_scheduler = 1;

禁用事件调度程序:

SET GLOBAL event_scheduler = OFF;
SET @@GLOBAL.event_scheduler = OFF;
SET GLOBAL event_scheduler = 0;
SET @@GLOBAL.event_scheduler = 0;

在 my.cnf 或 my.ini 配置文件中启用或禁用:

For enable, use as comment
–event_scheduler=DISABLED

–For Disable, remove comment –
event_scheduler=DISABLED

验证 Event Scheduler 服务是否正在运行:

1
2
3
4
5
6
7
8
9
10
SHOW PROCESSLIST;

mysql> show processlist;
+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+
| 5 | event_scheduler | localhost | NULL | Daemon | 175650 | Waiting on empty queue | NULL |
| 8 | root | localhost:63048 | NULL | Query | 0 | init | show processlist |
+----+-----------------+-----------------+------+---------+--------+------------------------+------------------+
2 rows in set (0.00 sec)

参考文章

https://smarttechways.com/2021/06/17/enable-and-disable-event-scheduler-in-mysql/

有个项目需要用到 Python 的 requests 库,但是在请求的时候报错了

1
requests.exceptions.SSLError: HTTPSConnectionPool(host='www.baidu.com', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1123)')))

及其恶心

解决

一个是安装 certifi

1
pip install certifi

然后MacOS下的解决方法是,运行那个命令行文件

1
/Applications/Python\ 3.7/Install\ Certificates.command

但是可能还是没有效果,可以用下面的代码解决,添加到代码里面

1
2
import ssl
ssl._create_default_https_context = ssl._create_unverified_context

测试代码

1
python3 -c 'import urllib.request; import ssl; ssl._create_default_https_context = ssl._create_unverified_context; print(urllib.request.urlopen("https://localhost:9200").status)'

curl: (60) SSL certificate problem: Invalid certificate chain

解决

1
curl -k https://www.baidu.com

添加 -k 参数忽略证书错误

问题

有一段文本,想要自动选中,代码如下

1
<div class="text">这是一段文字</div>

解决

1
2
3
4
5
6
7
8
const text = document.querySelector('.text')
text.addEventListener('click', () => {
const range = document.createRange()
range.selectNodeContents(text)
const selection = window.getSelection()
selection.removeAllRanges()
selection.addRange(range)
})

封装成函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function SelectText(element) {
const doc = document
const text = element
let range, selection

if (doc.body.createTextRange) {
range = document.body.createTextRange()
range.moveToElementText(text)
range.select()
} else if (window.getSelection) {
selection = window.getSelection()
range = document.createRange()
range.selectNodeContents(text)
selection.removeAllRanges()
selection.addRange(range)
}
}

问题

有一堆 div,不想一行一行显示,想在一个段落里显示,这个好像叫流式布局?代码如下

1
2
3
4
5
6
7
8
<div class="list">
<div class="text">这是第一句话</div>
<div class="text">这是第二句话</div>
<div class="text">这是第二句话</div>
<div class="text">这是第二句话</div>
<div class="text">这是第二句话</div>
<div class="text">这是第二句话</div>
</div>
1
2
3
.text {
display: inline;
}

后来还发现 display: inline; 下面的 margin 会失效,可以用 line-height 来解决这个问题。

问题

期望实现段前缩进,代码如下

1
2
3
<div class="test">
《这是一段文字》,期望段前缩进2个字符
</div>

解决

1
2
3
.test {
text-indent: 2em;
}

后记