小编Lui*_*len的帖子

mysql 如何确定其客户端的主机名?

我正在尝试创建一个 MySQL 用户,该用户只能从特定主机名连接到 MySQL 数据库。

将 db_name.* 上的所有内容授予由“some_passwd”标识的“user_name”@“appserver-lan.mydomain.com”

通过查看mysql db上的user表,可以看到用户创建成功:

使用mysql;select * from user where User='user_name' and Host='appserver-lan.mydomain.com'

或者

显示“用户名”@“appserver-lan.mydomain.com”的授权

我指定的主机名是 amazon-ec2 名称的别名,当 AWS DNS 服务器解析时会生成 LAN 地址:

[root@db_server ~] # 主机 appserver-lan.mydomain.com

appserver-lan.mydomain.com 是 ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.com 的别名 ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.com 的地址为 10.xxx .xxx.xxx

问题是,当我尝试从这个 appserver-lan 连接到数据库 LAN IP 时,尽管密码正确,但我收到了拒绝访问错误。这里奇怪的是,错误中显示的主机名不是我在创建用户时指定的主机名:

错误 1045 (28000):用户“user_name”@“ appserver.mydomain.com ”的访问被拒绝(使用密码:是)

所以,我的问题是:mysql 如何确定客户端主机名?我相信它不是通过反向 DNS 查找来实现的,因为我检查过并且它既没有指向“appserver.mydomain.com”,也没有指向“appserver-lan.mydomain.com”。此外,db 服务器在 /etc/hosts 上没有与 appserver 相关的条目。

总而言之,我很确定这是一个主机名解析问题,因为授予主机“%”或 LAN IP 的权限工作得很好。

对我缺少的东西有什么想法吗?

mysql user-permissions

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

具有 EBS 卷的 Amazon EC2 MySQL 实例上的高 iowait

我们有一个运行在 Amazon EC2 c1.medium 实例上的 MySQL 服务器,它依赖于使用 ext3 文件系统进行存储的单个 EBS 卷。

这个 MySQL 服务器被一些运行在一些 web 服务器上的应用程序以大约 500/ps 的速度查询,这些服务器也在 Amazon EC2 上。

正如您在下面看到的,服务器的平均负载和处理器空闲时间似乎很好,但现在有一些令人不安和担心的事情,这就是它一直在经历的高 iowait。

另一个让我非常担心的数字是 iostat 的每秒传输数 (tps),​​大部分时间都保持在 450 以上。在对这个话题做了一些研究之后,我看到有人说这是对 EBS 卷的要求太多:https : //forums.aws.amazon.com/thread.jspa? threadID =30769

顺便说一下,您将在下面看到的命令输出不是在高峰时间捕获的。这就是服务器大部分时间的行为方式。

好吧,大家都说,这是我的问题:

1- 是时候考虑迁移到 RAID 架构(我会说 RAID 0)了吗?

2- 我应该花时间在集群解决方案上吗,比如 MySQL Cluster?

3- 您认为这种情况是否严重影响了我们的应用程序?如果我们转向 RAID 0 和/或集群解决方案,它们的性能会更好吗?(到目前为止,应用程序似乎很高兴,但他们会更高兴吗?)

如果您需要任何进一步的信息,请告诉我。

~ # uptime 
 12:34:14 up 2 days,  4:06,  1 user,  load average: 2.24, 1.90, **1.84**

########################################################

~ # vmstat 5

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ …
Run Code Online (Sandbox Code Playgroud)

mysql iowait amazon-ec2 raid0 amazon-ebs

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

从什么时候 linux 主机实用程序忽略 /etc/hosts?

我一直在努力找出 linux 主机实用程序忽略我的 /etc/hosts 文件的原因,直到我在这里找到我的问题的答案:hosts 文件似乎被忽略了

使用此配置,大多数应用程序将很乐意与您从 /etc/hosts 中的条目一起使用。然而主机不看/etc/nsswitch.conf。这是设计使然,并非偶然,因为主机专门是一个 DNS 查找程序。/etc/hosts 不是 DNS,它(大部分)是我们在拥有 DNS 之前使用的。

但是,就我而言,该实用程序在不那么旧的日子里并没有像这样表现。

我很确定主机确实检查了 /etc/hosts 文件...

我是在艰难的一天之后发疯了还是我是对的?

如果我是对的,有谁知道他们为什么以及何时更改它?

我在 CentOS 5.6 和 6.0 服务器上注意到了它。

hosts internal-dns nsswitch.conf

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