①my.ini配置中就有的,去掉好像是log-bin这样的一行就可以有日志了.
mysql二进制日志文件用来记录所有用户对数据库操作,即记录用户对数据库操作的sql语句.如果有此文件,当数据库发生意外时,可以通过此文件查看到用户在此文件记录的时间段内用户所做的操作,再和数据库备份配合使用,即可再现用户操作,使数据库恢复.
小量的数据库我们可以每天进行完整备份,因为这也用不了多少时间,但当数据库很大时,我们就不太可能每天进行一次完整备份了,而且改成每周一次完整备份,每天一次增量备份类似这样的备份策略.增量备份的原理就是使用了mysql的二进制日志,所以我们必须启用二进制日志功能.
第一段:增量备份
①.、比如我们在星期天下午11点做一次完整备份:
mysqldump
--single-transaction
--flush-logs
--all-databases
fullbackup_sunday_11_PM.sql
在sql文件中我们会看到两行:
–
Position
to
start
replication
or
point-in-time
recovery
from
CHANGE
MASTER
TO
mysqladmin
flush-logs
第二段:恢复备份
mysql
接着我们导入星期一和星期二的增量备份:
mysqlbinlog
首先创建测试表testtable
将文件存入表中使用如下PHP代码
php
mysql_connect(?"localhost",?"root",?"password");?//连接数据库
mysql_select_db(?"database");?//选定数据库
$filename=""?//这里填入二进制文件名
$data?=?addslashes(fread(fopen($filename,?"r"),?filesize($filename)));//打开文件并规范化数据存入变量$data中
$result=mysql_query(?"INSERT?INTO?testtable?(filename,data)?VALUES?('$filename','$data')");//数据插入到数据库test表中
mysql_close();
从表中取回文件,使用如下PHP代码
if($id)?{
mysql_connect(?"localhost",?"root",?"password");
mysql_select_db(?"database");
$query?=?"select?data?from?testtable?where?filename=$filename";
$result?=?mysql_query($query);
$data?=?mysql_result($result,0,?"data");
执行命令:groupadd mysql和useradd -r -g mysql mysql
进入安装mysql软件目录:执行命令 cd /usr/local/mysql
修改当前目录拥有者为mysql用户:执行命令?chown -R mysql:mysql ./
安装数据库:执行命令?./scripts/mysql_install_db --user=mysql
修改当前目录拥有者为root用户:执行命令?chown -R root:root ./
修改当前data目录拥有者为mysql用户:执行命令?chown -R mysql:mysql data
到此数据库安装完毕
添加开机启动:执行命令cp support-files/mysql.server /etc/init.d/mysql,把启动脚本放到开机初始化目录
启动mysql服务:执行命令service mysql start
执行命令:ps -ef|grep mysql 看到mysql服务说明启动成功
执行命令:./bin/mysqladmin -u root password '密码'
ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
注意:建议使用软链过去,不要直接包文件复制,便于系统安装多个版本的mysql
以上就是土嘎嘎小编为大家整理的mysql二进制怎么用相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!