|
Тема |
Re: формат на mysql log файловете [re: jmut] |
|
Автор |
salle (един такъв) |
|
Публикувано | 01.08.05 21:16 |
|
|
Чакай сега ...
SQL е език, който на практика реализира два езика от теорията.
DDL -> Език за Дефиниране на Данни
DML -> Език за Манипулиране на Данни
CREATE, DROP, ALTER са DDL оператори
SELECT, INSERT, UPDATE, DELETE .... са DML оператори.
За SELECT lможе да се спори дали не е сам по себе си но това е друга тема.
Причината да ти препоръчам binary log е, че той съдържа само операторите които променят нещо т.е. DDL + INSERT, UPDATE, DELETE, REPLACE, LOAD
За разлика от него общият log съдържа всичко включително SELECT и SHOW
С mysqlbinlog получаваш доста по-лесен за обработка резултат. Там е ясно кога започва и свърша всеки оператор.
Разгледай примерчето по-долу. То е резултат от:
mysql> create table t (id int primary key);
Query OK, 0 rows affected (0.02 sec)
mysql> insert into t values(1), (2), (3);
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0
# at 4
#050801 21:14:13 server id 10041 log_pos 4 Query thread_id=8 exec_time=0 error_code=0
use bugs;
SET TIMESTAMP=1122920053;
SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=8,COLLATION_DATABASE=33,COLLATION_SERVER=33;
# at 139
#050801 21:14:13 server id 10041 log_pos 139 Query thread_id=8 exec_time=0 error_code=0
SET TIMESTAMP=1122920053;
create table t (id int primary key);
# at 209
#050801 21:14:23 server id 10041 log_pos 209 Query thread_id=8 exec_time=0 error_code=0
SET TIMESTAMP=1122920063;
SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=8,COLLATION_DATABASE=33,COLLATION_SERVER=33;
# at 344
#050801 21:14:23 server id 10041 log_pos 344 Query thread_id=8 exec_time=0 error_code=0
SET TIMESTAMP=1122920063;
insert into t values(1), (2), (3);
|
| |
|
|
|