我有一个大表(几亿行),我想对其进行有效分区。我的问题是分区大小和分区数之间是否存在权衡。据我所知,分区中使用的列上的大多数查询会更快,因为查询(对于大多数查询)只需要在适用于查询的分区内进行搜索。因此,为了最大限度地提高效率,您应该将大表划分为最大数量的分区,从而使每个分区尽可能小是有道理的。对于 MySQL,这意味着 1024 个分区。但是,拥有大量分区是否有任何性能缺陷?是这样,如何找到最佳分区数?
注意:在 stackoverflow 上已经有一个有点类似的问题,但只有一个答案,(从我的角度来看)没有达到目标。所以我会用我自己的方式陈述这个问题......希望它更清楚
如何更改 mysqladmin 使用的默认套接字?
我没有看到[mysqladmin]
in的部分/etc/my.cnf
。
它默认尝试连接到/tmp/mysql.sock
,但是,这不是我的 MySQL 服务器使用的套接字,所以我收到错误:
error: 'Can't connect to local MySQL server through
socket '/tmp/mysql.sock'
Run Code Online (Sandbox Code Playgroud)
我知道您可以在命令行指定套接字,例如:
mysqladmin --socket='/some/other/path/mysql.sock'
Run Code Online (Sandbox Code Playgroud)
如何更改 mysqladmin 使用的默认套接字,以便我不必每次都指定我的非标准路径?