Articles of mysql

使用libmysqlclient.so.18安装XtraBackup

现在的情况 我想在我的主数据库正在运行的VPS(Centos 5)上安装XtraBackup。 在rpm安装过程中,它告诉我错过了一个名为perl(DBD::mysql)的依赖关系。 当我尝试yum install该依赖项时,它告诉我这一点: Error: Missing Dependency: libmysqlclient.so.15(libmysqlclient_15)(64bit) is needed by package perl-DBD-MySQL-3.0007-2.el5.x86_64 (base) Error: Missing Dependency: libmysqlclient.so.15()(64bit) is needed by package perl-DBD-MySQL-3.0007-2.el5.x86_64 (base) 当我检查/usr/lib/mysql有几个不存在的符号链接叫做libmysqlclient.so.15。 唯一可用的符号链接是libmysqlclient.so和libmysqlclient_r.so ,它们链接到/usr/lib64/libmysqlclient.so ,它是libmysqlclient.so.18的符号链接。 看来我只有版本18安装。 以前的情况 我还在我的另一台VPS(Centos 6)上安装了XtraBackup。 那里发生了完全相同的错误。 它最后通过下载MySQL的共享compat 5.1 lib(MySQL-shared-compat-5.1),覆盖了不同版本的libs,直到16我相信。 之后,我可以很好地安装MySQL-shared-compat-5.1和XtraBackup 。 剩下的唯一问题是PHP使用libmysqlclient.so.18文件,因此httpd服务不会再启动。 我修正了(我认为)脏修复…通过创build一个符号链接libmysqlclient.so.18 -> libmysqlclient.so.16 。 之后,Apache加载没有问题。 它仍然感觉不对。 我对大部分这些东西并不是很有经验,所以我希望有人能够解释我正确的修复方法,如果可能的话,让Apache和XtraBackup与它们的libmysqlclient版本一起运行。

Bacula备份失败,出现重复的主键错误

所有的Bacula备份在周末开始失败,出现以下MySQL错误: 致命错误:sql_create.c:XXX填充文件表查询失败:INSERT INTO文件(FileIndex,JobId,PathId,FilenameId,LStat,MD5)SELECT batch.FileIndex,batch.JobId,Path.PathId,Filename.FilenameId,batch.LStat ,batch.MD5 FROM批JOINpathON(batch.Path = Path.Path)JOIN Filename ON(batch.Name = Filename.Name):ERR =键'PRIMARY'的重复条目'375086058' 这是相当突然的:似乎是在凌晨3点05分到3点11分之间发生的,没有其他的提示。 快速看一下数据库同意,375086058是最高编号的FileId字段(这是文件表的主索引),但我不知道如何解决它,而不会破坏我的Bacula数据库。 有任何想法吗?

在openvz容器中大量生产MySQL / Percona数据库

所以我目前正在运行一个MySQL 5.1数据库,其规格如下: Proc:Intel(R)Xeon(R)CPU E5-1620 0 @ 3.60GHz RAM:64 Go 磁盘:2x 100 Go SSD(RaidSoft) 我打算将我的物理服务器以及我的mysql服务器迁移到percona服务器5.6。 我在我的基础设施的其余部分使用Proxmox集群,因此我想把我的新的MySQL服务器放在一个专用的openvz容器(主机上只有一个)。 我已经成功地设置了这个,它似乎运作良好,但我仍然想知道这是一个好主意。 任何反馈?

MySQL / mariadb超载服务器

我有1GB RAM,1GB交换和3 CPU的openVZ VPS。 它使用Nginx,PHP,MySQL(我用mariadbreplace)运行Ubuntu。 这是TOP: 3934 www 20 0 30908 10m 4152 S 2 1.0 0:27.26 /usr/local/php/bin/php-cgi –fpm –fpm-config /usr/local/php/etc/php-fpm.conf 3946 www 20 0 30664 9m 4176 S 1 1.0 0:25.86 /usr/local/php/bin/php-cgi –fpm –fpm-config /usr/local/php/etc/php-fpm.conf 3948 www 20 0 30856 10m 4228 S 1 1.0 0:23.16 /usr/local/php/bin/php-cgi –fpm –fpm-config /usr/local/php/etc/php-fpm.conf 3947 www 20 0 […]

MySQL导入速度减慢,jbd2磁盘高I / O

我正在导入一个大的.sql文件到我的服务器MySQL数据库, 然而,import迄今只import了几张桌子,目前正在logging在一张桌子上。 然而,导入在每两千条logging之后暂停,并且这些暂停越长导入到表中的logging越多。 这基本上会很快停下来。 我在想这可能是与一些内存限制? 但是运行iotop显示jbd2进程在任何时候都在使用大量的磁盘I / O。 这可能是一个原因吗? 如果有,是否有任何方法来禁用日记,直到导入完成?

无法启动mysql服务器

我在安装依赖于MySQL的软件包时遇到问题。 在安装期间,它安装一个MySQL服务器,但由于某种原因启动服务失败,从而导致安装失败。 我正在运行一个Debian 7(64位)虚拟服务器,全新安装,没有plesk。 [FAIL] Starting MySQL database server: mysqld . . . . . . . . . . . . . . failed! 当我运行sudo -u mysql mysqld它返回如下的结果: 140311 20:14:12 [Warning] Using unique option prefix key_buffer instead of key_buffer_size is deprecated and will be removed in a future release. Please use the full name […]

根不能授予MySQL数据库的权限

我有一个MySQL数据库,我无法授权给新创build的数据库上的用户作为根login时。 mysql> create database test1; Query OK, 1 row affected (0.00 sec) mysql> grant usage on *.* to 'test'@'%' identified by 'test'; ERROR 1045 (28000): Access denied for user 'root'@'%' (using password: YES) mysql> show grants for root; +————————————————————————————————————–+ | Grants for root@% | +————————————————————————————————————–+ | GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY […]

从互联网连接到Mysql的作品,但是当我从MySQL查询浏览器尝试失败(Err。2003)

我可以连接到mysql-phpmyadmin通过互联网从浏览器(即谷歌铬),但是当我从MySQL查询浏览器尝试它总是失败。 它总是显示错误2003。 我已经创build入站规则,允许端口3306.并安装了ODBC驱动程序连接器版本5.2.6。 我可以连接到从局域网的MySQL,但不知何故,我不能从互联网连接。 从局域网和Internet有一个不同的版本mysql-phpmyadmin: 从局域网:MySQL 服务器:本地主机通过TCP / IP 服务器版本:5.5.16 从互联网 数据库服务器 Server: Localhost via UNIX socket Server type: MySQL Server version: 5.1.73-cll – MySQL Community Server (GPLv2) 这是问题(差异版本)? 我应该安装ODBC连接器版本5.1.73? 请帮我解决这个问题 谢谢,

使用MySQL复制在两个Percona Xtradb群集之间复制数据

我们目前有一个3节点的Percona Xtradb集群在单个数据中心中运行。 我们希望在发生灾难时增加容错function,以防止对单个数据中心的依赖,并将我们的Percona数据与第二个数据中心同步,以便在这种情况下我们可以轻松切换我们的应用程序以连接到新的同步群集事件。 虽然我知道我可以简单地在许多数据中心中添加更多的主节点,但我们不能牺牲数据中心在不同位置的往返写入时间。 相反,我想知道是否可以用MySQL复制来做到这一点。 我的想法是这样设置: 3节点主Percona集群 – > MySQL副本DB – > 3个节点Secondary Percona集群 虽然我意识到可能会有一些小的副本滞后,并且数据可能在几秒钟内不同步,但这是我们愿意做出的折衷。 通过这样的设置,我们可以很容易地在开关的翻转处切换群集。 我有几个问题: 这是一个坏主意吗? 我个人在这里看不到什么重大的缺点,但是我错过了什么? 是否有可能从一个MySQL从属副本既接收数据(从主Percona集群)和写入数据(到次Percona集群)? 如果主Percona集群发生故障,我们开始使用/写入Secondary Percona集群,会发生什么? 当主Percona集群返回时,我们如何才能轻松地将其与Secondary Percona集群中的新数据同步? 我们可以简单地(暂时)制作一个6节点的集群,而Percona会做这个工作吗? 我知道很多问题,但非常感谢您的帮助!

使用PHP脚本在Linux上对用户进行身份validation

我有一个运行在PHP中使用MySQL作为数据库运行的Web应用程序。 我试图让特定的用户通过SSH访问Linux系统来执行简单的命令行任务。 由于我已经有一个数据库准备好填充用户名/密码,我想用这个数据为用户login。我使用PHP函数password_verify和在某些情况下一次性密码,所以我无法使用MySQL直接进行authentication。 我想编写一个PHP脚本来login用户,如下所示: php login.php username password 只是返回1或0,或者主目录,权限等 我已经阅读了很多关于PAM和PHP的知识,但是这是关于在PHP中使用PAM的,我想用相反的方式。 为此目的使用LDAP服务器似乎对我来说有点矫枉过正。 我无法find我需要的东西。 有人能给我一个正确的方向推动吗?