AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-23332

HonoredMule's questions

Martin Hope
HonoredMule
Asked: 2016-12-20 07:54:47 +0800 CST

是否有(大部分)安全的方法来使用 zfs 快照备份实时 MySQL 数据库

  • 4

基本上我正在寻找的是一种告诉mysql(percona-flavored)采取以下步骤的方法:

  • 将所有提交的事务刷新到文件系统
  • 开始缓冲所有事务(使文件系统保持一致状态)
  • 等我做点什么(拍摄 zfs 快照)
  • 取消缓冲写入并恢复正常操作

允许 DDL 语句中断备份的解决方案是可以接受的(因为这种备份解决方案将被频繁应用,而 DDL 语句将非常罕见 - 最坏的情况是不得不比预期多回滚一个小时的数据库)。

备份操作对性能的破坏应该是最小的,但这不是一个负载很重的系统。在每个数据库或系统范围内执行此过程的解决方案都很好,尽管后者在某种程度上是首选。

zfs database-backup percona
  • 1 个回答
  • 720 Views
Martin Hope
HonoredMule
Asked: 2016-12-09 06:50:57 +0800 CST

为 Percona 激活 PAM 配置

  • 0

我正在尝试通过 PAM 为 Percona 配置 LDAP 支持,包括组映射和限制。我的 Percona 身份验证设置如下:

INSTALL PLUGIN pam SONAME 'auth_pam.so';

create user 'dba'@'%' IDENTIFIED WITH auth_pam AS 'mysql';
grant all privileges on *.* to 'dba'@'%' with grant option;

create user 'dbr'@'%' IDENTIFIED WITH auth_pam AS 'mysql';
grant select on *.* to 'dbr'@'%';

CREATE USER ''@'' IDENTIFIED WITH auth_pam AS 'mysql, sudo=dba, mysql=dbr';
GRANT PROXY ON 'dba'@'%' TO ''@'';
GRANT PROXY ON 'dbr'@'%' TO ''@'';

在 /etc/pam.d/mysql 我有:

auth required pam_warn.so
auth required pam_ldap.so
account required pam_ldap.so
account required pam_succeed_if.so user ingroup mysql

有了这些,以下工作:

  • 在 sudo(和 mysql)中以 LDAP 用户身份登录,获得 dba 的权限。
  • 在 mysql 中以 LDAP 用户身份登录,获得 dbr 的权限。
  • 尝试使用无效的用户名和/或密码登录,无法访问。

并且以下行为是不正确的(应该完全拒绝登录):

  • 在 sudo(但不是 mysql)中以 LDAP 用户身份登录,仍然获得 dba 的权限。
  • 以两个组中的 LDAP 用户身份登录,获得无权限访问。

花了很长时间才最终弄清楚配置/etc/pam.d/mysql没有效果。即使该文件不存在,行为也是相同的。

我的理解是字符串中的第一个值mysql, sudo=dba, mysql=dbr告诉 Percona 在名为 mysql 的文件中使用 PAM 配置,并且所有教程都显示文件名解析为/etc/pam.d/mysql.

我错过了什么?

ubuntu mysql pam ubuntu-16.04 percona
  • 1 个回答
  • 334 Views
Martin Hope
HonoredMule
Asked: 2012-12-12 14:03:37 +0800 CST

为什么MySQL打不开hosts.allow/hosts.deny?

  • 2

我有一个存储服务器运行 Nexenta(OpenSolaris 内核,Ubuntu 用户空间),在 ZFS 存储阵列上使用 MySQL,使用 innodb_file_per_table 和 ulimit -n 设置为 8K。mysqltuner.pl 确认文件限制并声称有 169 个文件。

以下命令:

pfiles `fuser -c / 2>/dev/null

表示一个 mysqld 进程有 485 个文件/设备描述符(它们几乎都是文件描述符)所以我不知道调整脚本的可靠性如何,但它仍然小于 8K,而且这个列表也没有找到其他进程接近它的极限。全球使用的描述符总数约为 1K。

那么什么会导致 mysqld 不断流式传输以下错误呢?

[date] [host] mysqld[pid]: warning: cannot open /etc/hosts.allow: Too many open files
[date] [host] mysqld[pid]: warning: cannot open /etc/hosts.deny: Too many open files

一切似乎实际上都运行良好,但问题不断涌入管理控制台并在全新启动时立即开始(不仅可重现,而且总是来自 mysqld 和主机文件,其权限是默认的-rw-r--r-- 1 root root)。当然,我可以从管理控制台抑制它,但我宁愿深入了解它,仍然允许 mysqld 警告/错误到达管理控制台。

编辑:不仅实际文件描述符完全在合理的限制范围内,即使文件限制提高到 65535 并且始终仅在 hosts.allow/deny 上,问题也仍然存在(立即出现)。

ubuntu
  • 1 个回答
  • 1648 Views
Martin Hope
HonoredMule
Asked: 2012-09-29 15:32:41 +0800 CST

如何使用通配符虚拟主机定向反向代理请求

  • 0

我有兴趣运行一个反向代理,它后面有 2-3 个虚拟机。每个内部服务器将运行多个虚拟主机,而不是在代理上手动配置每个单独的虚拟主机(各种虚拟主机来来去去太频繁了,这不实用),我想使用一些可以在顺序查找合适的后端服务器。例如:

Server 1: *.dev.mysite.com
Server 2: *.stage.mysite.com
Server 3: *.mysite.com, dev.mysite.com, stage.mysite.com, mysite.com
Server 4: *

在上面的配置中,task.dev.mysite.com 将转到服务器 1,dev.mysite.com 将转到服务器 3,yoursite.stage.mysite.com 将转到服务器 2,www.mysite.com 将转到服务器 3,并且yoursite.com 到服务器 4。

到目前为止,我已经研究过使用 Squid、Varnish 和 nginx。我对它们各自的可取性和一般适用性有自己的看法,但如果它们中的任何一个能够以这种方式处理动态服务器选择并且不需要每个虚拟主机配置,则不是很明显。另一方面,Apache 可以方便而简单地做到这一点,但除此之外(除了众所周知和熟悉之外)似乎非常不适合部分性能服务任务。

性能实际上还不是一个主要问题,但如果另一个系统性能好得多并且还可以处理所需的“免提”配置,那么使用 Apache 似乎是愚蠢的。但是,经常需要为所有生产服务调整网关,并冒着全网中断的风险……如果 Apache 成为一个太小的瓶颈,那么以后也会为自己设置更长的停机时间。

这些(或其他)反向代理中的哪一个可以做到/会做得最好?


也许我应该将其作为一个单独的问题发布,但如果 Apache 是唯一可行的选择,那么 apache2.2(Ubuntu 12.04.1)中的 apache-mpm-event 的安全/可靠/可预测性如何,特别是对于专用反向代理?据我了解,从 2.4 开始,Event MPM 被宣布为“安全”,但尚不清楚在 2.4 中达到稳定性是否对各种发行版的官方/稳定包渠道中可用的旧 (2.2) 版本有任何影响。

apache-2.2
  • 2 个回答
  • 1468 Views
Martin Hope
HonoredMule
Asked: 2009-10-19 20:34:46 +0800 CST

使用 Linux/OpenSolaris 进行无盘登录

  • 1

是否可以启用基于 Linux 或 OpenSolaris 的服务器来处理标准的 unix 登录请求,而无需启动保存根分区的硬盘驱动器?

我有一个基于 Nexenta (1) 的服务器,它使用一个非常旧的 40GB PATA 驱动器作为根分区,它不能驻留在主存储阵列中(我也不希望它驻留在主存储阵列中,尽管它确实支持它)。它表现良好,因为所有主动访问存储的东西都使用 SATA raid2z 阵列。这意味着根分区本身实际上完全处于非活动状态,并且 40GB 磁盘通常处于休眠状态。

或者更确切地说,几乎完全不活动。登录请求需要驱动器启动,这会导致烦人的登录延迟和对旧驱动器的不必要压力,否则旧驱动器可能会保持完全休眠状态。

据我所知,仅访问驱动器以读取 passwd 和 shadow 文件,令我惊讶的是,这些文件在第一次被读取后并没有被修改后仍然缓存在内存中。是否可以明确地将它们缓存起来,将它们重新定位到其他地方,或者以其他方式防止根分区必须启动?(2)


  1. 对于不熟悉的人,Nexenta 是 Ubuntu 的一个变体,它使用 OpenSolaris 内核和工具链,同时尽可能支持 Debian 工具链。在大多数情况下,我可以使用两者的功能。
  2. 请注意,当存储阵列不存在时,我不认为任何会破坏登录或启动的解决方案都是合适的。
cache
  • 2 个回答
  • 139 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve