【问题标题】:Statistics availability in MariaDBMariaDB 中的统计信息可用性
【发布时间】:2016-07-21 17:27:43
【问题描述】:

我想在 MariaDB 中尝试“独立于引擎”的统计数据,因为它已声明优于存储引擎统计数据。 因此我在 /etc/mysql/my.cnf 中设置了 use_stat_tables=preferably 并重新加载了服务。

以用户身份重新连接并执行后

分析表 tbl 持久性;

table_stats 表按预期填充;

我查询了系统变量:

显示变量,如“use_stat_tables”;

并且该值仍设置为“从不”。我很期待。 有人建议为什么系统变量没有改变?

【问题讨论】:

  • 你能在 MySQL 控制台上设置值吗?
  • 我试过如下:MariaDB [pktest]> set global use_stat_tables='preferably'; Query OK, 0 rows affected (0.00 sec) MariaDB [pktest]> show variables like 'use_stat_tables'; +-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | use_stat_tables | NEVER | +-----------------+-------+ 1 row in set (0.00 sec)
  • 你的 MariaDb 版本在 10.0.1 以上,对吧?
  • yes $ mysql --version mysql Ver 15.1 Distrib 10.1.16-MariaDB,适用于使用 readline 5.2 的 debian-linux-gnu (x86_64)

标签: statistics mariadb


【解决方案1】:

我发出命令的用户

set global use_stat_tables='prefetably';

没有正确的权限。 当以 root 身份连接时,它可以工作!

MariaDB [pktest]> select user();
+----------------+
| user()         |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.01 sec)

MariaDB [pktest]> set global use_stat_tables='preferably';
Query OK, 0 rows affected (0.00 sec)

MariaDB [pktest]> show variables like 'use_stat_tables';
+-----------------+------------+
| Variable_name   | Value      |
+-----------------+------------+
| use_stat_tables | PREFERABLY |
+-----------------+------------+
1 row in set (0.00 sec)

问题是,我如何向 mariadb 用户授予权限,以便用户能够成功发出 SET GLOBAL ... 命令?

【讨论】:

    猜你喜欢
    • 2016-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-15
    • 2017-09-21
    • 1970-01-01
    • 2020-02-26
    相关资源
    最近更新 更多