我需要访问我实验室远程服务器上的MySQL数据库。只有当我登录到远程网络上的网关服务器时,才能访问该服务器:
local server => gateway server => MySQL server.
我可以使用端口24222到网关。
我正在使用PERL 模块。这就是我在实验室时用来连接的东西:
my $host="1.2.3.4";
my $database="dbname";
my $user="user";
my $pw="pass";
my $table="table";
我想我必须
因此,在我的数据库上,授予/撤销特权只在建立新连接之后才生效。不过,我需要它立即生效,正如我所理解的那样,这就是flush privileges应该做的事情,但由于某些原因,它不起作用。
我的设置:
(已经建立了从server1到数据库服务器的数据库连接)
数据库服务器:
GRANT ALL PRIVILEGES ON *.* TO 'user'@'1.2.3.4';
FLUSH PRIVILEGES;
SHOW GRANTS FOR user@1.2.3.4;
> GRANT ALL PRIVILEGES ON *.* TO 'user'