日志文件

MySQL性能优化 -- 服务器配置优化

落花浮王杯 提交于 2020-01-25 05:34:26
常用查看性能参数的方法 show variables:查看服务器一些静态的参数,如缓冲区大小,字符集,数据文件名称等信息。 show rariables:查看的是MySQL启动之前已经配置号的一些系统静态参数。 show status:查看服务器运行中的状态信息,如当前连接数,锁等状态信息。 1、key_buffer_size的设置: 该参数用来设置索引块缓存的大小,只使用于MyISAM存储引擎,对MyISAM表性能影响最大的一个参数。 MySQL5.1以后提供多个key_buffer,可以将指定的表索引缓存到指定的key_buffer中,这样可以更好的降低线程之间的竞争。 常用操作: 查询缓存大小:show variables like ‘key_buffer_size’; 设置多个key_buffer:set global hot_cache2.key_buffer_size=128*1024; 将相关表的索引放到指定的索引缓存中:cache index t,t2 in hot_cache2; 将表t的索引加载到默认的缓存中:load index into cache t; 删除索引缓存:set global hot_cache2.key_buffer_size=0; 值得注意的是,不能删除默认的索引缓存区! cache index可以将多个表的索引加载到指定的索引缓冲区中

控制文件和日志文件,分别放到不同磁盘

眉间皱痕 提交于 2020-01-23 16:18:52
查看控制文件的位置 show parameter control_fi 创建控制文件的目录 mkdir -p /u02/controlfile/cdb1/ mkdir -p /u03/controlfile/cdb1/ mkdir -p /u04/controlfile/cdb1/ chown -R oracle:oinstall /u02 chown -R oracle:oinstall /u03 chown -R oracle:oinstall /u04 chmod -R 775 /u02 chmod -R 775 /u03 chmod -R 775 /u04 ls -ld /u02/controlfile/cdb1/ ls -ld /u03/controlfile/cdb1/ ls -ld /u04/controlfile/cdb1/ alter system set control_files=’/u01/app/oracle/oradata/cdb1/control01.ctl’, ‘/u01/app/oracle/fast_recovery_area/cdb1/control02.ctl’, ‘/u02/controlfile/cdb1/control03.ctl’, ‘/u03/controlfile/cdb1/control04.ctl’, ‘/u04

收缩SQL数据库日志文件

空扰寡人 提交于 2020-01-23 08:33:13
1.清空日志 DUMP TRANSACTION 库名 WITH NO_LOG 2.截断事务日志: BACKUP LOG 库名 WITH NO_LOG 3.收缩数据库文件(如果不压缩,数据库的文件不会减小 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件 --选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 --选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 也可以用SQL语句来完成 --收缩数据库 DBCC SHRINKDATABASE(库名) --收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles DBCC SHRINKFILE(1) 4.为了最大化的缩小日志文件(如果是sql 7.0,这步只能在查询分析器中进行) a.分离数据库: 企业管理器--服务器--数据库--右键--分离数据库 b.在我的电脑中删除LOG文件 c.附加数据库: 企业管理器--服务器--数据库--右键--附加数据库 此法将生成新的LOG,大小只有500多K 或用代码: 下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。 a.分离 EXEC sp_detach_db @dbname =

Unity 使用多线程来写日志文件

為{幸葍}努か 提交于 2020-01-22 19:11:09
目的 自动写日志文件功能,但是不能影响游戏性能,故使用多线程来写日志。 源码 /// <summary> /// 日志文件模块,使用多线程来进行写日志文件 /// </summary> public class LogFileModule { private static LogFileModule sLogFileModule ; /// <summary> /// 开启写日志 /// </summary> public static void Open ( ) { if ( sLogFileModule == null ) { sLogFileModule = new LogFileModule ( ) ; } } public static void Close ( ) { if ( sLogFileModule != null ) { sLogFileModule . Dispose ( ) ; sLogFileModule = null ; } } # region 私有 private class LogData { public string log { get ; set ; } public string trace { get ; set ; } public LogType level { get ; set ; } } private

logback-spring.xml

拥有回忆 提交于 2020-01-22 08:49:42
<?xml version="1.0" encoding="UTF-8"?> <configuration scan="true"> <!--设置变量,name为变量名,value为值,可以使用${变量名}方式使用--> <property name="APPDIR" value="logs" /> <property name="LOG_HOME" value="logs" /> <property name="APPNAME" value="trip-saas-commute" /> <property name="MDC_LOG_PATTERN" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSS} %p trip-saas-commute %t %logger{50} [line:%L %msg]%n"></property> <!-- 性能日志记录器,日期滚动记录 --> <!--当一个记录日志的事件被发起时,logback 会将这个事件发送给 appender--> <!--RollingFileAppender,滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件--> <appender name="performanceAppender" class="ch.qos.logback.core.rolling

android adb logcat获取日志文件

怎甘沉沦 提交于 2020-01-21 22:46:35
一般情况,可以直接在电脑终端上输入logcat来查看手机运行日志,但是测试工作者为了抓取日志文件来给开发人员,需要把日志导出到特定文件中。如下文。 以小米1s手机为例 步骤1:打开第一个终端窗口 adb devices(检查设备是否成功连接,并获取设备号) adb -s 04cf8300 logcat -c (清除LOGCAT的缓存) adb -s 04cf8300 logcat >test_logcat.txt(将log日志存在此txt文件中,默认显示在用户文档下面)如图: 2、再打开一个终端窗口:输入 adb -s 04cf8300 shell monkey -v -p com.kunshan.weisheng --throttle 300 20000 >test_Monkey.txt(执行monkey自动化测试。在测试过程中会有LOG产生。log存在上面文档中,monkey测试路径存在此文档中) 其中test_logcat.txt如图: test_Monkey.txt如图: 将test_logcat.txt文档交给开发就ok了。当然个人认为log太长,需要简化,可以设置优先级,提取概要。等以后再研究。 //消息过滤 针对ndk问题查找 adb logcat | /Users/yii_dev3/Documents/android-ndk-r9d\ndk-stack -sym

Android APP测试的日志文件抓取

房东的猫 提交于 2020-01-21 22:20:01
1 log文件分类简介   实时打印的主要有:logcat main,logcat radio,logcat events,tcpdump,还有高通平台的还会有QXDM日志   状态信息的有:adb shell cat /proc/kmsg ,adb shell dmesg,adb shell dumpstate,adb shell dumpsys,adb bugreport,工程 模式等   2 LOG抓取详解   l 实时打印 adb logcat -b main -v time>app.log 打印应用程序的log adb logcat -b radio -v time> radio.log 打印射频相关的log,SIM STK也会在里面,modem相关的ATcommand等,当然跟QXDM差的很远了。 adb logcat -b events -v time 打印系统事件的日志,比如触屏事件。。。 //android log的抓取 adb logcat //kernel log的抓取 adb shell cat /proc/kmsg //log 信息的保存 mkdir /data/anr logcat *:V > /data/anr/android demsg >/data/anr/kernel //按ctrl+c结束log输出 adb pull /data/anr .

Hadoop-3.2.1爬过的坑

谁说我不能喝 提交于 2020-01-21 02:58:09
异常 一般信息都会呈现在日志文件中,日志文件在 Hadoop 根目录 logs/ 下。 日志命名规则为 hadoop-用户名-节点名-域名.log ,寻找 namenode 节点的日志,比如我的用户名 rengui,我要找 namenode 节点,我的域名为 hadoop001。所以我将在下面的 hadoop-rengui-namenode-hadoop001.log 查看日志文件, cat -n hadoop-rengui-namenode-hadoop001.log 。 端口 Hadoop-3.2.1 已经将 NameNode 的 web 界面端口改为 9870. 来源: CSDN 作者: 韧桂 链接: https://blog.csdn.net/qq_41421230/article/details/104050192

logback-spring.xml 配置文件

安稳与你 提交于 2020-01-20 06:58:02
<?xml version="1.0" encoding="UTF-8"?> <!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果设置为WARN,则低于WARN的信息都不会输出 --> <!-- scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true --> <!-- scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。 --> <!-- debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 --> <configuration scan="true" scanPeriod="60 seconds" debug="false"> <!-- name的值是变量的名称,value的值时变量定义的值。通过定义的值会被插入到logger上下文中。定义变量后,可以使“${}”来使用变量。 --> <property name="APP_NAME" value="app" /> <!-- 上下文名称 --> <contextName>${APP_NAME}</contextName> <!-- 项目路径如下:D:

程序写日志文件时该不该加锁

时间秒杀一切 提交于 2020-01-18 08:15:07
程序写日志文件时该不该加锁 小说搜索 https://shupu.org/ 日志(log) 为了让自己的思路更加清晰,下面我都会称日志为 log。因为日志这个词有两种含义,详情见百度百科释义或者维基百科释义。 日记的另一种说法。“志”字本身为“记录”的意思,日志就为每日的记录(通常是跟作者有关的)。 服务器日志( server log),记录服务器等电脑设备或软件的运作。 我们这里说的当然是服务器日志,也就是 server log 。 写入 log 一般写入 log 都会遵循以下步骤: int fd = open(path) write(fd, sign_append) fclose(fd) 解释一下上面的代码: 1. int fd = open(path) 会通过系统调用打开一个文件描述符,或者在其他语言中也可以称作资源描述符,资源类型,或句柄。 2. write(fd, append = 1) write 系统调用,并加上 append 标志,会执行 seek 和 write 两个系统调用,但是这种系统调用是原子性的。 原子性意味着 seek 和 write 会同时执行,不会有两个线程产生交叉,必须 a 线程执行完 seek 和 write ,b 线程才能继续执行(这里说线程,是因为线程才是 cpu 调度的基本单位)。 所以在 nginx 中,我们加上 append 标志