关于MySQL二进制日志Binlog的认识
MySQL的二进制日志可以说或是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是失误安全型的.
在5.1的版本你二进制日志还替代了原本的更新日志.一般来说开启二进制日志大概会有1%的性能损耗(参见MySQL官方中文手册5.1.24版).二进制有两个最重要的使用场景:
其一是:MySQL Replication在Master端开启binlog,Mster把它的二进制日志传递给slaves来达到master-slave数据一直的目的.
其二:自然就是数据恢复了,通过使用mysqlbinlog工具来恢复数据.
binlog不支持select,show一类语句,如果要记录这些语句可以通过打开MySQL的general log来大到目的.
可以利用mysqlbinlog工具来查看二进制日志,打开一个正在使用的binlog
$mysqlbinlog var/mysql-bin.000022
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#091222 18:09:33 server id 2 end_log_pos 106 Start: binlog v 4, server v 5.1.41-debug-log created 091222 18:09:33 at startup
# Warning: this binlog was not closed properly. Most probably mysqld crashed writing it.
ROLLBACK/*!*/;
# at 106
#091222 23:20:35 server id 2 end_log_pos 174 Query thread_id=4 exec_time=1 error_code=0
SET TIMESTAMP=1261495235/*!*/;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1/*!*/;
SET @@session.sql_mode=0/*!*/;
/*!\C latin1 *//*!*/;
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
BEGIN
/*!*/;
# at 174
#091222 23:20:35 server id 2 end_log_pos 269 Query thread_id=4 exec_time=0 error_code=0
use test/*!*/;
SET TIMESTAMP=1261495235/*!*/;
insert bench values(20,'xiaojj')
/*!*/;
# at 269
#091222 23:20:35 server id 2 end_log_pos 296 Xid = 22
COMMIT/*!*/;
DELIMITER ;
# End of log file
相关文档:
1. mysqldump -u username -h somehost -p --compatible=mysql40 db_name > temp.sql
2. 用phpmyadmin清空数据库并设置数据库整理为utf8_general_ci
3. mysql -u username -h somehost -p --default-character-set=utf8 db_name < temp.sql ......
在SQL Server里建Mysql和Oracle数据库链接还是比较容易的:我们先在服务器上安装Mysql和Oracle数据库相关的ODBC驱动程序,在[管理工具]->[数据源(ODBC)] 设置系统DSN,如下图:
设置好了以后,我们可以用SQL Server自带的导出和导入工具来实 ......
TO_DAYS(date) //给定一个日期,返回从0年开始的天数。
from_DAYS(N) //给定一个天数,返回一个日期。
如:
select TO_DAYS('1997-10-7') //返回729669
select from_DAYS(729669) //返回1997-10-7
UNIX_TIMESTAMP(), UNIX_TIMESTAMP(date)
若无参数调用,则返 ......
用ADO操作MYSQL数据库 VBE中请确定引用 microsoft activeX data objects xx 库连接及更新MYSQL数据库数据
代码如下: Sub updt() Dim strconnt As String strconnt = "" Set connt = New ADODB.Connection Dim sevip, Db, user, pwd As String '设服务器地址、所连数据,及登录用户密码 sevip = "localhost" '"192.168.*.* ......
mysql数据库本身有数据备份和批量数据插入的命令,java代码可执行这些命令。
安装mysql后,需要设置环境变量:我的电脑右击--属性--高级--环境变量,增加MYSQL_HOME=“mysql安装路径”,然后path=%MYSQL_HOME%\bin
代码如下:
import java.io.BufferedReader;
import java.io.FileInputStream;
import java. ......