小编use*_*951的帖子

为什么 innodb 不存储地理空间数据?

我很好奇。

我有商务桌。现在我想我将不得不创建一个单独的表,位置表。那个单独的表应该是myisam。

但我为什么要这样做?

为什么innodb不能存储积分?

myisam

3
推荐指数
1
解决办法
1950
查看次数

mongodb日志中reslen等是什么意思?

database.tablebusiness query: { LongitudeLatitude: { $nearSphere: [ 106.772835, -6.186753 ], $maxDistance: 0.04498373205078301 }, Prominent: { $gte: 15 }, indexContents: { $all: [ /^aru/, /^op/ ] } } ntoreturn:20 ntoskip:80 nscanned:100 nreturned:20 reslen:1147 1927ms
Run Code Online (Sandbox Code Playgroud)

似乎 ntoreturn 意味着要返回的数字。ntoskip 是要跳过的数字。nscanned 似乎是 2 的总和。

什么是reslen?

我搜索谷歌没有答案。什么网站解释什么是reslen?

mongodb

3
推荐指数
1
解决办法
8127
查看次数

MySQL 每个查询是否有一个索引的限制?

MySQL 支持空间索引。然而,空间索引所能做的就是在一个框中找到点。它不能做一些花哨的事情,比如找到最近的 1000 点等。

我想,而且我不知道我哪里出错了,简单地在框中找到点很容易——只需做约束:

x < xmax and x > xmin and y < ymax and y > ymin
Run Code Online (Sandbox Code Playgroud)

是的,这些是使用至少 2 列的 4 个约束。结果是当有 160 万行时,事情变得太慢了。

但为什么?x 和 y 已排序。复杂度应该是log(n)。然而,查询可能需要 60 秒。

使用空间索引通过一些子查询技巧将其缩短到 1 秒。

我错过了什么?为什么在查询中使用一堆约束需要时间?

即使没有花哨的算法,也应该很容易快速获得框中的分数。然而,我觉得O(n)至少应该是复杂的。

mysql index

2
推荐指数
1
解决办法
2189
查看次数

我们可以通过复制文件来备份mysql数据库吗?

我试图在我的机器上重新安装 mysql,但它一直失败。每次失败时,它都会执行此锁定,并且该锁定和未来的努力将再次失败。

最后我决定做真正的全新安装

  • 删除所有内容
  • 重新安装

该过程在此处列出:http : //stuffthatspins.com/2011/01/08/ubuntu-10-x-completely-remove-and-clean-mysql-installation/

我不想丢失已经存在的数据。是的,它有备份,但我有点喜欢那里。

那么,我可以只 mv 内容 /etc/mysql 然后在我重新安装所有内容后将其复制回来吗?

我的程序员说这行不通

如果没有,我还应该知道什么?

我有点忘记 mysql 在哪里存储数据。我猜这是 ubuntu 的默认设置。

更新:我使用可用计算机在一些本地数据库上尝试过。Myisam 表被转移。但是 innodb 表没有。

另外http://www.chriscalender.com/?tag=innodb-error-tablespace-id-in-file显示 innodb 不会通过复制文件那么容易地传输。我错过了什么吗?

另一个更新:答案是肯定的,我们可以。我们做到了:D


更新伙计们。

简短的回答是,我们可以。我的程序员刚刚做到了。关键是复制整个文件,实现innodb将数据库存储在一个大文件中。不知道为什么。

另一个答案更好,所以我选择了那个(我认为选择我自己的答案并不客观)。我只想分享它的工作原理。

mysql backup installation

1
推荐指数
1
解决办法
3765
查看次数

标签 统计

mysql ×2

backup ×1

index ×1

installation ×1

mongodb ×1

myisam ×1