问题标签 [mariadb-10.4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
214 浏览

mysql - MATCH AGAINST 全文 MariaDB 中的连字符

我有如下的数据库表 PERSON

我想使用此查询搜索并获取名字结果

我想得到“Peter-Parkar Williams”和“Peter-Pant Nati”的结果,但它并没有像我预期的那样给出。如何得到这个结果?

注意:在这种情况下,我不想使用“LIKE”运算符,严格需要 MATCH AGAINST 的答案。

0 投票
2 回答
120 浏览

mysql - 如何按最大日期/年份的最后日期显示值

我需要一个查询来显示最大日期/一年中的最后一个日期之后的值(saldo),但我已经尝试过,但它总是显示第一个日期的值。

这是我的查询:

我的结果:

在此处输入图像描述

我的预期结果应该只显示如下红色框中的值:

在此处输入图像描述

0 投票
1 回答
114 浏览

sql - 基于计数使用 HeidiSQL 删除记录

我不小心在一个表中创建了大量(500K+)不正确的记录。该表将 Face_ID 作为唯一键,将 Picture_ID 作为外键。我想删除与 Picture_ID 的相同值相关联的大量记录的所有记录。以下查询完美且非常快速地运行:

Select Picture_ID, COUNT(*) From faces Group BY Picture_ID Having COUNT(*) > 1000

我尝试了以下方法,但事件在执行 20 分钟后,查询仍在运行:

delete from faces where Picture_ID IN (Select Picture_ID From faces Group BY Picture_ID Having COUNT(*) > 1000)

即使我将数字(上例中为 1000)调整为仅找到 3 个 Picture_ID 值的值,每个值大约有 1000 条记录,查询仍然需要很长时间。(坦率地说,这让我害怕需要多长时间 - 让我想知道我的数据库完成后会剩下什么!)

在 Windows 10 上使用 HeidiSQL 和 MariaDB 进行编码的最有效方法是什么。

0 投票
1 回答
30 浏览

sql - SQL SELECT 语句不适用于 DELETE

我有一条 SQL 语句,我试图运行它来删除与 user_id 和用户名关联的答案。该查询在尝试选择时有效,但不适用于删除。我在 DELETE 语句中得到的错误如下:

我从 SELECT 语句得到的输出:

选择语句:

删除语句:

表结构users

表结构answers

DELETE 语句的预期输出将通过删除影响answers表中的一个或多个行(分配给从 WHERE 子句中的用户名获得的 user_id 的所有行)。

0 投票
0 回答
1300 浏览

windows - 错误 2013 (HY000):在“握手:读取初始通信数据包”时失去与 MySQL 服务器的连接,系统错误:11

我通过 docker-compose 设置了 2 个单独的堆栈,每个堆栈都是 php + mariadb。第一个有 mariadb 监听 3306 端口:

我使用 -p 标志buildup第二个项目,这样事情就不会混淆:

docker-compose -p project2 build && docker-compose -p project2 up

在第二个项目中,我必须更改 mysql 的侦听端口:

...否则 docker 守护进程说 3306 已经被占用,我理解这似乎是合乎逻辑的

它给出了以下内容,使用docker ps -a

我现在的问题是我无法从我的 Windows 主机访问数据库,我收到此错误:

错误 2013 (HY000):在“握手:读取初始通信数据包”时失去与 MySQL 服务器的连接,系统错误:11

我在我的 mariadb2 Dockerfile 中尝试了几件事

  • 添加host.docker.internal/etc/hosts.allow
  • 添加bind-address=host.docker.internal(也尝试过 127.0.0.1,也尝试过 0.0.0.0)到/etc/mysql/my.cnf
  • 暴露 3308

我也尝试从 3308 端口/TCP 打开防火墙规则

接下来我能做什么?...花了我几个小时来弄清楚如何让事情正常进行...

0 投票
2 回答
184 浏览

mysql - MySql 查询两个表并将第二个作为属性添加到第一个表中的行

我正在制作一个教师界面,我有四个表教授、学生、所有作业和学生作业(所有学生的作业)

我想把所有学生和他们的所有作业都发给教授,但有些有多个作业,有些没有。我从第一个表中查询所有学生信息,现在我希望每一行(学生)都有一个属性 assignments,它是第二个表中所有作业的数组。

学生

作业

我想得到:

我正在使用 nodejs(mysql 模块)来查询数据库。


更新(来自评论)

版本 10.4.11-MariaDB – pro_programmer

0 投票
1 回答
371 浏览

mariadb - Maxscale readwritesplit show the same number of connections

I've set up Maxscale to ReadWriteSplit with no reads to master (the default) to a Galera cluster (3 nodes).

While testing some read queries using loader.io I always get the same number of connection across all nodes:

Shouldn't i expect to see a high number of connections on nodes 2 and 3 (slaves) and a slow number on node 1?

0 投票
1 回答
487 浏览

mariadb - 计算 MariaDB 10.4 中 json 列的数组中有多少行具有嵌套值

我在 MariaDB 10.4 的 json 列的单元格中有以下值:

键 ( "0", "1", "2", "3") 是自动生成的。
我想计算每个数组的第二个元素与我在条件中传递的元素相同的行数。
现在我有能力做这样的事情:

哪个打印是:

我只知道如何以固定方式($.[*])传递密钥,而实际上我想遍历密钥以检查该值是否存在于1数组的单元格中(并因此计数)。我想知道如何改进我的查询。

提前致谢!

0 投票
1 回答
73 浏览

mariadb-10.4 - Maxscale 在节点重启后失去用户同步

我将 Maxscale 作为 3 个 Galera 节点的 ReadWriteSplit。节点 1 是 MASTER,其他 2 是 SLAVES。

我总是在 master 上创建我的用户:

由于没有重新启动任何点头(出于 MariaDB 升级或其他原因),一切都很好。但是如果节点重新启动,当任何查询命中 SLAVES Maxscale 声称:

要修复它,在 MASTER,我需要GRANT ALL PRIVILEGES再次:

并且错误停止。这是一个错误还是我做事不正确?

0 投票
0 回答
222 浏览

python - 无法使用 python 连接器将数据插入 maria db

我几乎尝试了所有方法,但没有任何效果,而且我在 stackoverflow 上找不到任何与此相关的内容。我的任务很简单。我正在尝试将数据插入表中并使用 python 回读,但我没有得到问题所在。这是我的代码。我在第一类中有两个函数是插入数据。

当我运行上述函数时,我得到以下输出。

它没有将它插入到我通过终端检查过的表中,我可以使用终端插入数据。

另一个功能是检查表中是否存在具有该用户名的用户。代码如下。

即使我使用终端将数据插入表中,这里 res 始终为 None 。它永远不会在表中找到该数据。有人可以帮忙吗?