logging 日志表的设计

2023-10-31

Netkiller MySQL 手札

MySQL MariaDB...

MrNeo Chan陈景峰(BG7NYT)


中国广东省深圳市龙华新区民治街道溪山美地
518131
+86 13113668890
+86 755 29812080
<>

文档始创于2010-11-18

版权 © 2011, 2012, 2013 Netkiller(Neo Chan). All rights reserved.

版权声明

转载请与作者联系,转载时请务必标明文章原始出处和作者信息及本声明。

文档出处:
http://netkiller.github.io
http://netkiller.sourceforge.net

 

$Date: 2013-04-10 15:03:49 +0800 (Wed, 10 Apr 2013) $


 

 

4.11. logging 日志表的设计

CREATE TABLE `logging` (
	`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
	`tag` ENUM('unknow','www','user','admin') NOT NULL DEFAULT 'unknow' COMMENT '日志标签',
	`time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '产生时间',
	`facility` ENUM('bank','unionpay','sms','email') NOT NULL COMMENT '类别',
	`priority` ENUM('info','warning','error','critical','exception','debug') NOT NULL COMMENT '级别',
	`message` VARCHAR(512) NOT NULL COMMENT '内容',
	PRIMARY KEY (`id`)
)
COMMENT='日志表'
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=2;
		

分区日志表

		
delimiter $$

CREATE TABLE `logging` (
  `tag` enum('unknow','login','info','admin','cron','manual') NOT NULL DEFAULT 'unknow' COMMENT '日志标签',
  `asctime` datetime NOT NULL COMMENT '产生时间',
  `facility` enum('account','bank','unionpay','sms','email','unknow') NOT NULL DEFAULT 'unknow' COMMENT '类别',
  `priority` enum('info','warning','error','critical','exception','debug') NOT NULL DEFAULT 'debug' COMMENT '级别',
  `message` varchar(512) NOT NULL COMMENT '内容',
  `operator` varchar(50) NOT NULL DEFAULT 'computer' COMMENT '操作者'
) ENGINE=InnoDB DEFAULT CHARSET=utf8
/*!50100 PARTITION BY RANGE (YEAR(asctime))
SUBPARTITION BY HASH (MONTH(asctime))
(PARTITION p0 VALUES LESS THAN (1990) ENGINE = InnoDB,
 PARTITION p1 VALUES LESS THAN (2000) ENGINE = InnoDB,
 PARTITION p2 VALUES LESS THAN MAXVALUE ENGINE = InnoDB) */$$		
		
		

分表+分区,每年分表一次,每个分区中保存一个月的数据

delimiter $$

CREATE TABLE `logging_2013` (
  `tag` enum('unknow','login','info','admin','cron','manual') NOT NULL DEFAULT 'unknow' COMMENT '日志标签',
  `asctime` datetime NOT NULL COMMENT '产生时间',
  `facility` enum('account','bank','unionpay','sms','email','unknow') NOT NULL DEFAULT 'unknow' COMMENT '类别',
  `priority` enum('info','warning','error','critical','exception','debug') NOT NULL DEFAULT 'debug' COMMENT '级别',
  `message` varchar(512) NOT NULL COMMENT '内容',
  `operator` varchar(50) NOT NULL DEFAULT 'computer' COMMENT '操作者'
) ENGINE=InnoDB DEFAULT CHARSET=utf8
/*!50100 PARTITION BY LIST (MONTH(asctime))
SUBPARTITION BY KEY (facility)
(PARTITION part0 VALUES IN (1) ENGINE = InnoDB,
 PARTITION part1 VALUES IN (2) ENGINE = InnoDB,
 PARTITION part2 VALUES IN (3) ENGINE = InnoDB,
 PARTITION part3 VALUES IN (4) ENGINE = InnoDB,
 PARTITION part4 VALUES IN (5) ENGINE = InnoDB,
 PARTITION part5 VALUES IN (6) ENGINE = InnoDB,
 PARTITION part6 VALUES IN (7) ENGINE = InnoDB,
 PARTITION part7 VALUES IN (8) ENGINE = InnoDB,
 PARTITION part8 VALUES IN (9) ENGINE = InnoDB,
 PARTITION part9 VALUES IN (10) ENGINE = InnoDB,
 PARTITION part10 VALUES IN (11) ENGINE = InnoDB,
 PARTITION part11 VALUES IN (12) ENGINE = InnoDB) */$$		
		

命名分区

delimiter $$

CREATE TABLE `logging_2012` (
  `tag` enum('unknow','login','info','admin','cron','manual') NOT NULL DEFAULT 'unknow' COMMENT '日志标签',
  `asctime` datetime NOT NULL COMMENT '产生时间',
  `facility` enum('account','bank','unionpay','sms','email','unknow') NOT NULL DEFAULT 'unknow' COMMENT '类别',
  `priority` enum('info','warning','error','critical','exception','debug') NOT NULL DEFAULT 'debug' COMMENT '级别',
  `message` varchar(512) NOT NULL COMMENT '内容',
  `operator` varchar(50) NOT NULL DEFAULT 'computer' COMMENT '操作者'
) ENGINE=InnoDB DEFAULT CHARSET=utf8
/*!50100 PARTITION BY LIST (MONTH(asctime))
SUBPARTITION BY KEY (facility)
(PARTITION January VALUES IN (1) ENGINE = InnoDB,
 PARTITION February VALUES IN (2) ENGINE = InnoDB,
 PARTITION March VALUES IN (3) ENGINE = InnoDB,
 PARTITION April VALUES IN (4) ENGINE = InnoDB,
 PARTITION May VALUES IN (5) ENGINE = InnoDB,
 PARTITION June VALUES IN (6) ENGINE = InnoDB,
 PARTITION July VALUES IN (7) ENGINE = InnoDB,
 PARTITION August VALUES IN (8) ENGINE = InnoDB,
 PARTITION September VALUES IN (9) ENGINE = InnoDB,
 PARTITION October VALUES IN (10) ENGINE = InnoDB,
 PARTITION November VALUES IN (11) ENGINE = InnoDB,
 PARTITION December VALUES IN (12) ENGINE = InnoDB) */$$

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

logging 日志表的设计 的相关文章

  • django-auth-ldap 身份验证失败

    我正在尝试使用Django Auth Ldap https pythonhosted org django auth ldap 在我的项目 Django 1 6 Python 2 7 中 但它不起作用 我的活动目录模式是 我已经通过安装 l
  • 有没有办法将 SQL 数据库链接到 LDAP 服务器

    我们有一个 SQL 联系人数据库 它链接到我们所有的项目信息 其中包含很多附加功能 最近有人建议我们在最终用户的电子邮件客户端中提供此信息的联系人部分 因此我们正在考虑设置 LDAP 服务器 是否有任何工具可以让我们将数据库中的信息 可能是
  • 从 1000 增加限制?

    当我像这样进行搜索时 my mesg ldap gt search base gt OU test DC example DC com scope gt one filter gt objectClass organizationalPer
  • 为什么我从 LDAP 属性中获取“System.__ComObject”?

    我将是第一个承认这是被删减和过去的节目的人 我以前没看过AD 实在是看不懂 我想这就是我的下一个研究 不管怎样 这是一些测试代码 它应该显示到期日期 要么以可读的形式 要么以刻度显示 这并不重要 这是一个 Web 表单 在开发 Web 服务
  • Sitecore 与 LDAP - 以编程方式进行身份验证

    我正在 Sitecore 中创建一个应用程序 我只希望用户可以通过直接 URL 来使用它 我希望针对 LDAP 进行身份验证 我尝试直接进入应用程序并让它重定向到自动登录页面并将我重定向到应用程序 但它没有这样做 相反 它带我进入了 Sit
  • 使用 PHP、活动目录以及 IE/Firefox 对 ldap 进行身份验证

    下面的代码根据 ldap 检查用户的凭据
  • dartlang 和 dartdap 库以及与活动目录的连接

    我一直在为 Dart 寻找一个好的 ldap 库来连接 Microsoft Active Directory 我找到了 dartdap 但我似乎无法让它工作 我 100 确信我的 CN 和密码是正确的 因为我可以使用 lpap 浏览器连接到
  • GitoLite 和 Git 可以使用 LDAP 而不是 SSH 密钥吗

    我的公司正在考虑使用 git 和 gitolite 但不想使用 SSH 密钥 而是像使用 LDAP 一样工作 这可以做到吗 我从来没有见过这样做 我在每个地方都有这个设置 并且总是使用 SSH 密钥 是的 您可以毫无问题地做到这一点 你只需
  • LDAP:ldap.SIZELIMIT_EXCEEDED

    我正在得到一个ldap SIZELIMIT EXCEEDED当我运行此代码时出错 import ldap url ldap
  • 无法通过ldap3 Python3更改用户密码

    每当我尝试通过 ldap3 库更改某人的密码时 都会收到以下错误 type modifyResponse result 53 message 0000001F SvcErr DSID 031A12D2 problem 5003 WILL N
  • 使用 PHP 更新 AD 密码的问题

    您好 我编写了以下脚本来更新特定用户的密码
  • 保持 LDAP 会话

    在 PHP 中 假设我在第 1 页有一个 LDAP 连接 ldapconn ldap connect ldapserver if ldapconn binding to ldap server ldapbind ldap bind ldap
  • 通过 JAVA 的 LDAP 无需提供密码

    在 C 中 我编写了下面的代码来连接到 LDAP 服务器并查询相同的内容 String ldapUrl LDAP DirectoryEntry entry new DirectoryEntry ldapUrl DirectorySearch
  • Java 中的搜索结果

    我使用以下代码列出 LDAP 中的用户 Hashtable
  • 递归查询 LDAP 组成员资格

    我正在编写一个基于 MVC NET 4 0 的网站 该网站需要来自我的公司 LDAP 服务器的登录凭据 我的代码要求的是仅允许属于特定组的用户 例如 我可能正在寻找属于 企业 IT 组的用户 我的凭据可能属于 系统管理员 组 该组是 公司
  • LDAP中超时的实现

    我一直在处理我们正在使用的应用程序LDAP获取用户详细信息 有时获取用户详细信息需要更多时间 我想实施time out获取详细信息的方法 以便我们可以避免在最坏的情况下在服务器中挂起事务 这里我们使用的是LdapUtil我们在其中配置的类L
  • 我可以从 LDAP 更改自己的 Active Directory 密码(无需管理帐户)

    我没有 也不会 拥有管理员帐户 我想从 java 更改 Active Directory 中自己 用户 的密码 我怎样才能做到这一点 使用来自网络的代码 private void changePass throws Exception St
  • 当建立 TLS / LDAP 或 TLS / HTTP 连接时,线路上会发生什么?

    我正在重新表述我的问题 希望能得到更好的答复 我问了类似的问题这里服务器故障 https serverfault com questions 178561 what are the exact protocol level differen
  • Docker 容器中的 LDAP 身份验证

    默认情况下 当Docker容器启动时 里面的用户是sudo I want 默认情况下将 sudo 用户锁定在容器中 在容器中使用 LDAP 身份验证而不是默认身份验证 当用户与映像一起提供时 或者在容器运行时由 sudo 用户创建 为此 我
  • Gerrit 和 Active Directory

    我正在尝试设置 Gerrit 以使用我们的公司 Active Directory 进行身份验证 我知道很多人都设法让它发挥作用 但它对我来说不起作用 如果我运行一个ldapsearch命令如下我得到了正确的结果 所以我知道我的搜索字符串是正

随机推荐

  • 【python实现基于深度学习的文本情感分类(1)】——要做什么?

    All our works can be found on the github project 俗话说得好 万事开头难 往后中间难 最后结尾难 为什么做这个 这是博主人工智能基础课的大作业 内容是用深度学习做金融文本的情感分类 语言 工具
  • ES聚合统计group by,sum,max,min,avg,count等聚合统计

    基本查询 通过match实现全文搜索 FIELD 就是我们需要匹配的字段名 TEXT 就是我们需要匹配的内容 query match FIELD TEXT 通过term实现精确搜索 FIELD 就是我们需要匹配的字段名 TEXT 就是我们需
  • java中Arrays.sort()

    该方法是Arrays类的静态方法 默认对数组进行从小到大进行排序 1 Arrays sort int a 这种形式是对一个数组的所有元素进行排序 并且是按从小到大的顺序 import java util public class Test
  • python中列表和字典的常用知识点

    本文主要介绍python列表和字典的常用知识点 增 删 改 查 一 列表 1 1 提取元素 两种取法 一个是取单个值 一个是取切片 不同点 取值直接使用 列表名 索引值 取到的值的数据类型是元素的数据类型 切片的格式 列表名 左索引值 右索
  • Java泛型详解(进阶四)

    目录 友情提醒 第一章 泛型介绍 1 1 什么是泛型 1 2 泛型为什么出现 第二章 泛型类 接口 方法 2 1 为什么要用泛型类 接口 2 2 自定义泛型类 2 3 多泛型变量 2 4 自定义泛型接口 2 5 自定义泛型方法 2 6 泛型
  • 【目标检测】数据增强

    一 目标检测 yolo v4的related work部分精简的介绍了目标检测部分 目标检测大概分为one stage和two stage部分 其中two stage部分主要包括R CNN系列 one stage则包括anchor base
  • LeetCode初级算法(数组)解答

    这里记录了LeetCode初级算法中数组的一些题目 加一 本来想先转成整数 加1后再转回去 耽美想到测试的例子考虑到了这个方法的笨重 所以int类型超了最大范围65536 导致程序出错 class Solution public vecto
  • ASP.NET项目中的web.config文件里配置数据库连接并在程序代码中获取连接字符串.

    1 在
  • org.aspectj.lang.ProceedingJoinPoint获取返回类型、参数名称/值等

    1 参数值 Object args joinPoint getArgs 2 参数名称 Signature signature joinPoint getSignature if signature instanceof MethodSign
  • 游戏开发计算机图形学基础知识系列:入门书籍选择(还待持续检验)

    游戏开发计算机图形学基础知识系列 入门书籍选择 还待持续检验 声明 未经作者允许 严禁商用 转载请标明出处和来源 谢谢 笔者入门时 看过一个网址和四本书的前几章 因此来谈下图形学入门时选择书籍的感悟 图形学入门时 最烦的是编译库相关文件 如
  • 解决百度地图开发问题:java.lang.UnsatisfiedLinkError:No implementation found for

    看到一些开发者卡在这个问题上不得解 大部分是因为so文件没有正常解析导致的 以下为解决方法 首先拷贝几个不同的装so文件的文件夹到 项目名 app libs 下 也就是和jar包同一目录下 打开项目后 编写build gradle文件 在a
  • 数据库连接池数量配置公式

    数据库连接池数量配置公式 前言 公式 我的理解 前言 这里没有说明具体那种数据库那种连接池是因为这个公式适合大多数的各种数据库和大多数连接池 服务器连接池的数量配置很重要 太少了DB服务器工作不饱和 客户端的事务在积压 太多了服务器又响应不
  • C#应用程序调用java jar包中的方法

    1 下载ikvm8 解压到C Program Files 2 C Program Files ikvm 7 2 4630 5 bin配置在系统环境变量path中 3 maven项目打包 执行如下命令 mvn clean mvn instal
  • 数据清洗小记(11):Kettle_利用设置变量实现数据增量(小例)

    背景 利用kettle工具 完成某表的增量工作 解决 利用模块完成即可 如下简图 实验 先手工准备一个实验环境 准备基本完成如下效果 select t t rowid from EMP ETL t select max hiredate m
  • 【Linux】C语言动态库和静态库的制作和使用

    静态库 mylib c include
  • Field.get(null)

    1 field get null public static void main String args Field field MainTest class getDeclaredField name static field setAc
  • 三层架构与MVC的区别

    本篇博客是从网上找得各种资料 一再说说三层架构和MVC的区别 http baike baidu com view 687468 htm 三层架构与MVC的区别 MVC 模型Model 视图View 控制器Controller 是一种设计模式
  • 如何自学web安全(详细路径)

    直入主题 不要嫌墨迹 看完对你有帮助 web基础知识 web安全 意为web的安全 web即万维网 是由超文本和HTTP构造 就是我们常说的网站那么要学习web安全 必要先要了解web的知识 不然何谈渗透 网站是由程序 空间 域名三大部分组
  • Leetcode437.路径总和 III——利用前缀和的回溯算法

    文章目录 引入 前缀和题解 之前在 5337 每个元音包含偶数次的最长子字符串 状态压缩DP一文中介绍过状态压缩DP 里面有个思想其实也是利用了前缀和 和本文很相似 引入 本题 如下 437 路径总和 III 给定一个二叉树 它的每个结点都
  • logging 日志表的设计

    Netkiller MySQL 手札 MySQL MariaDB Mr Neo Chan 陈景峰 BG7NYT 中国广东省深圳市龙华新区民治街道溪山美地518131 86 13113668890 86 755 29812080