小编Kat*_*kas的帖子

无法删除“GRANT USAGE”

我正在测试一些东西,并添加了一个:

grant usage on statistics.* to cptnotsoawesome@localhost identified by 'password';
Run Code Online (Sandbox Code Playgroud)

所以现在当我做

show grants for cptnotsoawesome@localhost;
Run Code Online (Sandbox Code Playgroud)

我可以看到其中之一是:

Grants for cptnotsoawesome@localhost
----------------------------------
GRANT USAGE ON *.* TO 'cptnotsoawesome'@'localhost' IDENTIFIED BY PASSWORD 'somePEW-PEWstring' 
Run Code Online (Sandbox Code Playgroud)

现在我想删除它,因为我认为它存在安全隐患,所以我这样做:

REVOKE USAGE ON *.* FROM 'cptnotsoawesome'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)

但它仍然显示授权列表中的USAGE grant。

Grants for cptnotsoawesome@localhost
----------------------------------
GRANT USAGE ON *.* TO 'cptnotsoawesome'@'localhost' IDENTIFIED BY PASSWORD 'somePEW-PEWstring' 
Run Code Online (Sandbox Code Playgroud)

任何想法为什么?我究竟做错了什么?

mysql permissions

15
推荐指数
2
解决办法
3万
查看次数

MySQL 读取/写入每个表

我正在优化我们的数据库。本质上,我试图在我们的数据库中找到写入次数最多和读取次数最多的表。之后,我将把这些表符号链接到单独的驱动器中。

有没有办法跟踪每个表的活动?如下所示,每个表的 IOPS、写入、读取?

mysql optimization

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

MySQL暖程序

你通常如何预热你的数据库?

我对数据库中的每个表运行类似的查询:

SELECT * FROM ip_log ORDER BY ID;
SELECT ip, member_id FROM ip_log ORDER BY ip, member_id;
Run Code Online (Sandbox Code Playgroud)

这是最好的方法,还是有更酷的方法?

mysql

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

MySQL 表/数据库到不同的磁盘

我知道有可能拥有一个包含许多表/数据库的单个数据库服务器,并且您可以将其中一些表/数据库分离到单独的磁盘中。假设您有 5 个表/数据库和 5 个驱动器。因此,您将每个表/数据库附加到不同的驱动器。从而增加 IO 和其他一切。

那个技术叫什么?

我认为如果您尝试分离数据库,您只需将不同的驱动器安装到不同数据库的不同文件夹,但是如果您想将表分离到不同的驱动器(每个表在不同的磁盘中)怎么办

mysql innodb myisam scalability

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

MySQL 复制:“休斯顿,我们遇到了问题”

我的复制服务器遇到了问题。本质上,我们有 2 个数据库(database1 和 database2)。主服务器两者都有。从站只有database1。有一个

Replicate_Do_DB: database1
Run Code Online (Sandbox Code Playgroud)

在 CHANGE MASTER TO 配置中设置。

现在发生的事情是 - 我们正在使用代码点火器,其中一位程序员创建了 database2 并开始向其中插入信息。代码点火器将默认数据库设置为 database1。现在结果是他生成的每个查询 - 我在 SHOW SLAVE STATUS\G 上收到错误:

Error 'Table 'database2.tbl40' doesn't exist' on query. Default database: 'database1'. Query: 'INSERT INTO `database2`.`tbl40` (`date`, `day`) VALUES ('2011-04-26', '2011-04-26')'
Run Code Online (Sandbox Code Playgroud)

所以基本上,我后来解决了这个问题,但复制不起作用,因为大约有 1000 个查询会为复制服务器产生该错误。

我的问题是 - 有没有办法从二进制日志中清除这样的查询?或者我需要编写一个脚本来执行

SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
Run Code Online (Sandbox Code Playgroud)

对于每个产生和错误的查询?

mysql replication

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

MySQL慢日志配置

有没有办法让 MySQL 慢日志每天启动新的日志文件?目前它只是一个大文件,并且每天都必须grep行。为每一天的慢日志设置单独的文件会方便得多。

我是否必须配置 my.cnf 或某些 linux 功能?

mysql performance configuration slow-log

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

禁用“显示表​​格;” 在 mysql 上

我现在一直在网上查找,似乎找不到禁用此命令的选项。我认为这是一个相当危险的安全漏洞。

有一个选项可以禁用SHOW DATABASES;,但没有SHOW TABLES;

也许你们中的一些人曾经

mysql

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