① sql日志文件放在哪里日志文件满了如何处理
方法1:
在查询分析仪里面运行下面代码:
backup log dbname with NO_LOG
backup log dbname with TRUNCATE_ONLY
DBCC SHRINKDATABASE(dbname)
方法2:
进入企业管理器,选中数据库
所有任务->分离数据库
到数据库文件的存放目录,将dbname_log.LDF文件删除,怕S的话可以拷出去
企业管理器->附加数据库,选dbname,这个时候你会看见日志文件这项是一个叉,不要紧继续,此时数据库就会提示你该数据库无日志是否创建一个新的,确定就是了
方法3:
进入企业管理器,选中数据库
所有任务->收缩数据库
② sql 获取数据库日志文件位置
先打开SQL Server数据库并连接。
然后找到目标数据库,右键并点击“属性”。
在弹出的属性窗口左侧“选择页”中选择“文件”选项卡。
然后在右侧窗体中即可看到相应内容了:逻辑名称是数据文件及日志文件的文件名,路径就是其所在位置了。
就是相应的.mdf和.ldf文件。
③ 怎么设置SQL语句中表的保存位置
表1前面加上路径。如:into table c:\aaa\表1,表示表1放到C盘aaa目录下。
④ 如何修改sql server 2005数据库系统日志保存路径
这个分两种情况:
一、创建数据
创建时直接修改成你要的路径,主体和日志文件都可以修改
二、已经存在的数据库
你可以先分离数据库,到C:\Program
Files\Microsoft
SQL
Server\MSSQL.1\MSSQL\LOG路径下将你的日志文件拷贝到你需要的路径下。然后再附加上数据库即可
⑤ mysql创建数据库时如何指定数据文件与日志文件的位置和大小
Mysql创建数据库时会在如下目录创建以数据库名为名的目录
showvariableslike"%datadir%";
数据文件日志也就在相应目录下了。
日志大小、看看这些参数是否能达到你的目的:
命令行参数
–log-bin=filename:记录二进制日志文件的位置,尽量指定路径名,如果不指定的话则保存在数据目录;
–log-bin-index=file:记录二进制日志文件索引的位置,保存了日志文件名;
–max_binlog_size:单个文件最大多少;
–binlog-do-db=db_name:哪个数据库使用,只有这个数据库使用;
–binlog-ignore-db=db_name:哪个数据库不使用,只有这个数据库不使用;
系统变量
log_bin:日志的位置;
binlog_cache_size:二进制日志缓存大小,是每一个连接进来的线程分配的大小,不是整个服务器的大小;
max_binlog_cache_size:最大缓存大小;
max_binlog_size:单个文件最大大小,超过此大小则再分配一个文件,但是一个事务必须在一个文件中,所以可能会稍大点;
binlog_cache_use:当前连接使用的binlog缓存的事务的数量,使用showstatuslike‘binlog_cache_use’查看(showstatus命令显示了所有连接到mysql服务器的状态值);
binlog_cache_disk_use:如果binlog_cache_use不够用,则在磁盘上缓存,应该尽量避免;
binlog_do_db:设置master-slave时使用;
binlog-ignore-db:设置哪个数据库不记录日志;
sync_binlog:缓存与硬盘的同步频率(commit多少下同步一次,0表示服务器自动控制);
⑥ 如何在MySql中记录SQL日志记录
一.错误日志
错误日志在Mysql数据库中很重要,它记录着mysqld启动和停止,以及服务器在运行过程中发生的任何错误的相关信息。
1.配置信息
--log-error=[file-name]用来指定错误日志存放的位置。
如果没有指定[file-name],默认hostname.err做为文件名,默认存放在DATADIR目录中。
也可以将log-error配置到my.cnf文件中,这样就省去了每次在启动mysqld时都手工指定--log-error.例如:
[mysql@test2]$ vi /etc/my.cnf
# The MySQL server
[mysqld]
....
log-error = /var/lib/mysql/test2_mysqld.err
.....
2.错误信息样板
080313 05:21:55 mysqld started
080313 5:21:55 InnoDB: Started; log sequence number 0 43655
080313 5:21:55 [Note] /usr/local/mysql/bin/mysqld: ready for connections.
Version: '5.0.26-standard-log' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Edition - Standard (GPL)
080313 5:24:13 [Note] /usr/local/mysql/bin/mysqld: Normal shutdown
080313 5:24:13 InnoDB: Starting shutdown...
080313 5:24:16 InnoDB: Shutdown completed; log sequence number 0 43655
080313 5:24:16 [Note] /usr/local/mysql/bin/mysqld: Shutdown complete
080313 05:24:16 mysqld ended
080313 05:24:47 mysqld started
080313 5:24:47 InnoDB: Started; log sequence number 0 43655
080313 5:24:47 [Note] /usr/local/mysql/bin/mysqld: ready for connections.
Version: '5.0.26-standard-log' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Edition - Standard (GPL)
080313 5:33:49 [Note] /usr/local/mysql/bin/mysqld: Normal shutdown
三.查询日志
查询日志记录了clinet的所有的语句。
Note:由于log日志记录了数据库所有操作,对于访问频繁的系统,此种日志会造成性能影响,建议关闭。
1.配置信息
--log=[file-name]用来指定错误日志存放的位置。
如果没有指定[file-name],默认为主机名(hostname)做为文件名,默认存放在DATADIR目录中。
也可以将log配置到my.cnf文件中,这样就省去了每次在启动mysqld时都手工指定--log.例如:
# The MySQL server
[mysqld]
......
#query-log
log = /var/lib/mysql/query_log.log
......
2.读取查询日志
查询日志是纯文本格可,可以使用OS文本读取工具直接打开查看。例如:
[mysql@test2]$ tail -n 15 query_log.log
080313 7:58:28 17 Query show tables
080313 8:07:45 17 Quit
080313 10:01:48 18 Connect root@localhost on
080313 10:02:38 18 Query SELECT DATABASE()
18 Init DB test
080313 10:02:42 18 Query show tables
080313 10:03:07 18 Query select * from pet
080313 10:06:26 18 Query insert into pet values('hunter','yxyup','cat','f','1996-04-29',null)
080313 10:06:39 18 Query select * from pet
080313 10:07:13 18 Query update pet set sex='m' where name='hunter'
080313 10:07:38 18 Query delete from pet where name='hunter'
080313 10:13:48 18 Query desc test8
080313 10:14:13 18 Query create table t1(id int,name char(10))
080313 10:14:41 18 Query alter table t1 add sex char(2)
[mysql@test2]$
四.慢查询日志
慢查询日志是记录了执行时间超过参数long_query_time(单位是秒)所设定值的SQL语句日志。
Note:慢查询日志对于我们发现性能有问题的SQL有很帮助,建议使用并经常分析
1.配置信息
--log-slow-queries=[file-name]用来指定错误日志存放的位置。
如果没有指定[file-name],默认为hostname-slow.log做为文件名,默认存放在DATADIR目录中。
也可以将log-slow-queries配置到my.cnf文件中,这样就省去了每次在启动mysqld时都手工指定--log-slow-queries.例如:
# The MySQL server
[mysqld]
......
#slow-query-log
log-slow-queries = /var/lib/mysql/slow_query_log.log
......
2.读取慢查询日志
[mysql@test2]$ cat slow_query_log.log
/usr/local/mysql/bin/mysqld, Version: 5.0.26-standard-log. started with:
Tcp port: 3306 Unix socket: /var/lib/mysql/mysql.sock
Time Id Command Argument
# Time: 080313 5:41:46
# User@Host: root[root] @ localhost []
# Query_time: 108 Lock_time: 0 Rows_sent: 0 Rows_examined: 8738
use test;
select count(1) from t1 a, t1 b,t1 c where a.id=b.id and b.name=c.name;
# Time: 080313 5:52:04
# User@Host: root[root] @ localhost []
# Query_time: 583 Lock_time: 0 Rows_sent: 0 Rows_examined: 508521177
select count(1) from t1 a, t1 b where a.id=b.id;
/usr/local/mysql/bin/mysqld, Version: 5.0.26-standard-log. started with:
Tcp port: 3306 Unix socket: /var/lib/mysql/mysql.sock
Time Id Command Argument
# Time: 080313 10:39:59
# User@Host: root[root] @ localhost []
# Query_time: 11 Lock_time: 0 Rows_sent: 4537467 Rows_examined: 4537467
use test;
select id from tail;
如果慢查询日志记录很多可以使用mysqlmpslow进行分类汇总
[mysql@test2]$ mysqlmpslow slow_query_log.log
Reading mysql slow query log from slow_query_log.log
Count: 1 Time=583.00s (583s) Lock=0.00s (0s) Rows=0.0 (0), root[root]@localhost
select count(N) from t1 a, t1 b where a.id=b.id
Count: 1 Time=108.00s (108s) Lock=0.00s (0s) Rows=0.0 (0), root[root]@localhost
select count(N) from t1 a, t1 b,t1 c where a.id=b.id and b.name=c.name
Count: 1 Time=11.00s (11s) Lock=0.00s (0s) Rows=4537467.0 (4537467), root[root]@localhost
select id from tail;
mysql有以下几种日志:
错误日志: -log-err
查询日志: -log
慢查询日志: -log-slow-queries
更新日志: -log-update
二进制日志: -log-bin
在mysql的安装目录下,打开my.ini,在后面加上上面的参数,保存后重启mysql服务就行了。
例如:
#Enter a name for the binary log. Otherwise a default name will be used.
#log-bin=
#Enter a name for the query log file. Otherwise a default name will be used.
#log=
#Enter a name for the error log file. Otherwise a default name will be used.
log-error=
#Enter a name for the update log file. Otherwise a default name will be used.
#log-update=
查看日至:
1. 首先确认你日志是否启用了
mysql>show variables like 'log_bin';
如果启用了,即ON
那日志文件就在mysql的安装目录的data目录下
cat/tail 日志文件名
2. 怎样知道当前的日志
mysql> show master status;
3. 查看从某一段时间到某一段时间的日志
mysqlbinlog --start-datetime='2008-01-19 00:00:00'
--stop-datetime='2008-01-30 00:00:00' /var/log/mysql/mysql-bin.000006
> mysqllog1.log
⑦ sql server 2005数据库日志文件放在哪里
通常建立数据库时 ,都会忘记要保存 .mdf 和 .ldf 文件 ,当以后再要用到的时候 ,找的天昏地暗也找不到 ,是不是很恨自己啊???
在SQL Server 2005目录下的默认目录下 ,如果你不知道的话 ,你可以重新在SQL Server 2005新建立一个(当然不是真正的建),你取好名字后 ,在点击 .mdf 和 .ldf 文件保存的路径 ,点击保存路径,默认路径就为出来 !
⑧ 如何修改sql server 2005数据库系统日志保存路径
这个分两种情况:
一、创建数据
创建时直接修改成你要的路径,主体和日志文件都可以修改
二、已经存在的数据库
你可以先分离数据库,到C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG路径下将你的日志文件拷贝到你需要的路径下。然后再附加上数据库即可