Articles of mysql

MySQL使用mysqlbinlog实用程序时数据不一致

我有一个问题在MySQL复制。 我有一个MySQL原始数据快照,我的主控主机有2个二进制日志(binlog.01,binlog.02 – 创build快照后开始logging) 我想要做的是将原始数据快照复制到从属主机,使用mysqlbinlog实用程序执行binlog.01,然后在更改主机将主机指向主机点binlog.02在启动位置1。 当奴隶完全处理二进制日志,我使用mk-table-checksum来检查复制,我得到了十几个不一致的消息。 然而,用另一种方法,我尝试将原始数据快照再次复制到从属主机,将主机更改为主机主机指向binlog.01在开始位置1 – 没有处理任何mysqlbinlog命令 – 我意识到,我没有得到任何不一致的消息时再使用mk-table-checksum。 我想知道为什么使用mysqlbinlog时数据库不一致。 请任何帮助,将不胜感激。

无法在复制的SAN上附加数据库

我们目前拥有一个集群化的SQL Server 2005,它已经为我们的灾难恢复解决scheme复制了SAN磁盘,以testing灾难恢复,我们打破了SAN同步,然后将各个数据库连接到DR服务器上。 我们的networking服务器最近有一个应用程序升级,DotNet的版本从V1.1升级到V4,但SQL服务器没有升级到Dot Net 4。 在DRtesting中,我们像往常一样打破了SAN同步,然后继续附加数据库,但其中一个数据库无法附加,出现以下错误: An error occurred while recovering database 'xxxxxxxxxx'. Unable to connect to Microsoft Distributed Transaction Coordinator (MS DTC) to check the completion status of transaction (1:288343130). Fix MS DTC, and run recovery again. Could not open new database 'xxxxxxxxx'. CREATE DATABASE is aborted. (Microsoft SQL Server, Error: 3437) 在SQL日志中find以下内容: […]

编译mysqlnd_uh插件

我试图实现一个mysqllogging器类似于下面的文章中描述使用mysqlnd_uh扩展名。 http://blog.mayflower.de/archives/578-MySQLnd-Plugins-Writing-a-MySQL-Query-Logger-in-PHP.html 它应该如何工作的是,它将拦截进入mysql和mysqli函数的调用到代理类中,在那里我们可以拦截调用以进行日志logging。 当然,这个客户端库需要Mysql原生驱动程序,这个驱动程序并没有与PHP 5.3一起安装,所以我按照本教程中的步骤检查了Apache和PHP的源代码,并将它们编译到运行最新版本Ubuntu的虚拟机上编译mysqli和mysql的选项设置为mysqlnd。 http://www.web-tech-india.com/articles/php/compiling_php_apache/ 这似乎工作得很好,因为我可以访问mysqli_fetch_all函数,只有在mysqlnd中支持。 现在我试图做的是使用pecl安装mysqlnd_uh插件。 sudo /home/jason/pear/bin/pecl install mysqlnd_uh-alpha 这对于configuration部分运行正常,但在make中失败,出现以下错误。 显然,它抱怨没有find源文件,但它看起来在哪里? 我应该传入一个参数到pecl指向我的PHP源代码的副本? 在教程中,它告诉我用–enable-so选项编译apache,是否会造成混乱? running: make /bin/bash /tmp/pear/install/pear-build-roothNJj2h/mysqlnd_uh-0.1.0a1/libtool –mode=compile cc -I. -I/tmp/pear/install/mysqlnd_uh -DPHP_ATOM_INC -I/tmp/pear/install/pear-build-roothNJj2h/mysqlnd_uh-0.1.0a1/include -I/tmp/pear/install/pear-build-roothNJj2h/mysqlnd_uh-0.1.0a1/main -I/tmp/pear/install/mysqlnd_uh -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /tmp/pear/install/mysqlnd_uh/php_mysqlnd_uh.c -o php_mysqlnd_uh.lo libtool: compile: cc -I. -I/tmp/pear/install/mysqlnd_uh -DPHP_ATOM_INC -I/tmp/pear/install/pear-build-roothNJj2h/mysqlnd_uh-0.1.0a1/include -I/tmp/pear/install/pear-build-roothNJj2h/mysqlnd_uh-0.1.0a1/main -I/tmp/pear/install/mysqlnd_uh -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM […]

无法在Mac上访问mySQL

我是mySQL的新手,已经下载到我的电脑(Mac OS X 10.7狮子)。 我也下载了SQLpro。 我试图访问我的电脑上的数据库,并遇到麻烦。 我尝试input数据库名称来打开它,并得到这个错误: Access denied for user ''@'localhost' to database 'name' 我已经尝试login作为根,我也得到了相同的错误,除了用户名是'root'@'localhost' 我试图删除从/ usr /本地文件夹的MySQL,并重新安装它,我得到相同的错误。 另外,删除后,我运行的程序找不到数据库。 所以我假设我曾经拥有的数据库已经不存在了。

MySQL主 – 主复制:“锁超时超时”

我正在使用MySQL设置master-master复制。 写入只对Master1完成。 Master2是Master1的奴隶,正在完美复制。 当我将Master1设置为Master2的从属设备时,出现以下错误: Lock wait timeout exceeded 当我停止在Master1上复制(使用STOP SLAVE)时,错误也会停止。 什么可能导致这个? 我想这可能是某种循环复制循环。 但为什么?

在Ubuntu 11.10上从源代码安装MySQL时出错

我试图从源代码安装MySQL作为一个uni项目的一部分 – 我从来没有做过的事情 – 并试图make下面的错误信息: [ 79%] Building CXX object sql/CMakeFiles/sql.dir/mysqld.cc.o /home/me/mysql-5.5.17/sql/mysqld.cc: In function 'void handle_connections_sockets()': /home/me/mysql-5.5.17/sql/mysqld.cc:5270:31: error: invalid conversion from 'size_socket* {aka int*}' to 'socklen_t* {aka unsigned int*}' [-fpermissive] /usr/include/i386-linux-gnu/sys/socket.h:214:12: error: initializing argument 3 of 'int accept(int, sockaddr*, socklen_t*)' [-fpermissive] /home/me/mysql-5.5.17/sql/mysqld.cc:5337:48: error: invalid conversion from 'int*' to 'socklen_t* {aka unsigned int*}' [-fpermissive] /usr/include/i386-linux-gnu/sys/socket.h:119:12: error: […]

从MySQL连接标识中识别PID?

“mysqladmin processlist”的输出如下所示: +——-+——+———–+——-+———+——+——————-+————————+ | Id | User | Host | db | Command | Time | State | Info | +——-+——+———–+——-+———+——+——————-+————————+ | 4411 | root | localhost | mydb1 | Sleep | 86 | | | | 12911 | root | localhost | mydb1 | Sleep | 50 | | | | 65142 | root […]

Django Web应用程序的数据库encryption,无需在服务器上存储密钥

我们正在build立一个虚拟私人服务器(不是我们托pipe的),我们将在这个服务器上testing我们基于Django的web应用程序。 在这些testing中产生的用户生成的内容将非常敏感。 我们希望保持这个内容的encryption,例如在备份媒体丢失的情况下。 内容将被存储在MySQL或SQLite数据库中。 据我了解,我们不能encryptionVPS的文件系统。 如果我们使用类似SQLcipher( http://sqlcipher.net/ )的方式encryption数据库,有没有办法将密钥传递给Django而不将它存储在服务器上呢? 我们将启动每个testing的服务器,所以这部分不是一个问题。

如何在Ubuntu中使用MySQL加载MSSQL数据库

我有一个MSSQL数据库,并希望将其转换为MySQL数据库,所以我可以从Ubuntu浏览它。 我需要安装哪些软件包/工具,以及实现这个目标的步骤是什么? 谢谢

检查cron是否运行并有回退

我写了一个实时的公交跟踪程序,每分钟运行一次cron来检查公交车的服务。 为了删除一些服务器资源,我将在PHPfog上创build一个实例,然后在那里执行它。 我的问题是什么是知道如果cron失败的最好方法,如果是的话,然后运行本地服务器副本作为备份?