Files
phachon--mm-wiki/docs/databases/table.sql
T
wehub-resource-sync a21fa4e11b
Go / Build (push) Failing after 1s
chore: import upstream snapshot with attribution
2026-07-13 12:30:21 +08:00

306 lines
15 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- --------------------------------
-- MM-Wiki 表结构
-- author: phachon
-- --------------------------------
-- 手动安装时首先需要创建数据库
-- CREATE DATABASE IF NOT EXISTS mm_wiki DEFAULT CHARSET utf8;
-- --------------------------------
-- 用户表
-- --------------------------------
DROP TABLE IF EXISTS `mw_user`;
CREATE TABLE `mw_user` (
`user_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '用户 id',
`username` varchar(100) NOT NULL DEFAULT '' COMMENT '用户名',
`password` char(32) NOT NULL DEFAULT '' COMMENT '密码',
`given_name` varchar(50) NOT NULL DEFAULT '' COMMENT '姓名',
`mobile` char(13) NOT NULL DEFAULT '' COMMENT '手机号',
`phone` char(13) NOT NULL DEFAULT '' COMMENT '电话',
`email` varchar(50) NOT NULL DEFAULT '' COMMENT '邮箱',
`department` char(50) NOT NULL DEFAULT '' COMMENT '部门',
`position` char(50) NOT NULL DEFAULT '' COMMENT '职位',
`location` char(50) NOT NULL DEFAULT '' COMMENT '位置',
`im` char(50) NOT NULL DEFAULT '' COMMENT '即时聊天工具',
`last_ip` varchar(15) NOT NULL DEFAULT '' COMMENT '最后登录ip',
`last_time` int(11) NOT NULL DEFAULT '0' COMMENT '最后登录时间',
`role_id` tinyint(3) NOT NULL DEFAULT '0' COMMENT '角色 id',
`is_forbidden` tinyint(3) NOT NULL DEFAULT '0' COMMENT '是否屏蔽,0 否 1 是',
`is_delete` tinyint(3) NOT NULL DEFAULT '0' COMMENT '是否删除,0 否 1 是',
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(11) NOT NULL DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户表';
-- ---------------------------------------------------------------
-- 系统角色表
-- ---------------------------------------------------------------
DROP TABLE IF EXISTS `mw_role`;
CREATE TABLE `mw_role` (
`role_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '角色 id',
`name` char(10) NOT NULL DEFAULT '' COMMENT '角色名称',
`type` tinyint(3) NOT NULL DEFAULT '0' COMMENT '角色类型 0 自定义角色,1 系统角色',
`is_delete` tinyint(3) NOT NULL DEFAULT '0' COMMENT '是否删除,0 否 1 是',
`create_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`role_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='系统角色表';
-- -------------------------------------------------------
-- 系统权限表
-- -------------------------------------------------------
DROP TABLE IF EXISTS `mw_privilege`;
CREATE TABLE `mw_privilege` (
`privilege_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '权限id',
`name` char(30) NOT NULL DEFAULT '' COMMENT '权限名',
`parent_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '上级',
`type` enum('controller','menu') DEFAULT 'controller' COMMENT '权限类型:控制器、菜单',
`controller` char(100) NOT NULL DEFAULT '' COMMENT '控制器',
`action` char(100) NOT NULL DEFAULT '' COMMENT '动作',
`icon` char(100) NOT NULL DEFAULT '' COMMENT '图标(用于展示)',
`target` char(200) NOT NULL DEFAULT '' COMMENT '目标地址',
`is_display` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否显示:0不显示 1显示',
`sequence` int(10) NOT NULL DEFAULT '0' COMMENT '排序(越小越靠前)',
`create_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`privilege_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='系统权限表';
-- ------------------------------------------------------------------
-- 系统角色权限对应关系表
-- ------------------------------------------------------------------
DROP TABLE IF EXISTS `mw_role_privilege`;
CREATE TABLE `mw_role_privilege` (
`role_privilege_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '角色权限关系 id',
`role_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '角色id',
`privilege_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '权限id',
`create_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
PRIMARY KEY (`role_privilege_id`),
KEY (`role_id`),
KEY (`privilege_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='系统角色权限对应关系表';
-- --------------------------------
-- 空间表
-- --------------------------------
DROP TABLE IF EXISTS `mw_space`;
CREATE TABLE `mw_space` (
`space_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '空间 id',
`name` varchar(50) NOT NULL DEFAULT '' COMMENT '名称',
`description` varchar(100) NOT NULL DEFAULT '' COMMENT '描述',
`tags` varchar(255) NOT NULL DEFAULT '' COMMENT '标签',
`visit_level` enum('private','public') NOT NULL DEFAULT 'public' COMMENT '访问级别:private,public',
`is_share` tinyint(3) NOT NULL DEFAULT '1' COMMENT '文档是否允许分享 0 否 1 是',
`is_export` tinyint(3) NOT NULL DEFAULT '1' COMMENT '文档是否允许导出 0 否 1 是',
`is_delete` tinyint(3) NOT NULL DEFAULT '0' COMMENT '是否删除 0 否 1 是',
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(11) NOT NULL DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`space_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='空间表';
-- --------------------------------
-- 空间成员表
-- --------------------------------
DROP TABLE IF EXISTS `mw_space_user`;
CREATE TABLE `mw_space_user` (
`space_user_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '用户空间关系 id',
`user_id` int(10) NOT NULL DEFAULT '0' COMMENT '用户 id',
`space_id` int(10) NOT NULL DEFAULT '0' COMMENT '空间 id',
`privilege` tinyint(3) NOT NULL DEFAULT '0' COMMENT '空间成员操作权限 0 浏览者 1 编辑者 2 管理员',
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(11) NOT NULL DEFAULT '0' COMMENT '修改时间',
PRIMARY KEY (`space_user_id`),
UNIQUE KEY (`user_id`, `space_id`),
KEY (`user_id`),
KEY (`space_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='空间成员表';
-- --------------------------------
-- 文档表
-- --------------------------------
DROP TABLE IF EXISTS `mw_document`;
CREATE TABLE `mw_document` (
`document_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '文档 id',
`parent_id` int(10) NOT NULL DEFAULT '0' COMMENT '文档父 id',
`space_id` int(10) NOT NULL DEFAULT '0' COMMENT '空间id',
`name` varchar(150) NOT NULL DEFAULT '' COMMENT '文档名称',
`type` tinyint(3) NOT NULL DEFAULT '1' COMMENT '文档类型 1 page 2 dir',
`path` char(30) NOT NULL DEFAULT '0' COMMENT '存储根文档到父文档的 document_id 值, 格式 0,1,2,...',
`sequence` int(10) NOT NULL DEFAULT '0' COMMENT '排序号(越小越靠前)',
`create_user_id` int(10) NOT NULL DEFAULT '0' COMMENT '创建用户 id',
`edit_user_id` int(10) NOT NULL DEFAULT '0' COMMENT '最后修改用户 id',
`is_delete` tinyint(3) NOT NULL DEFAULT '0' COMMENT '是否删除 0 否 1 是',
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(11) NOT NULL DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`document_id`),
KEY (`parent_id`),
KEY (`space_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='文档表';
-- --------------------------------
-- 用户收藏表
-- --------------------------------
DROP TABLE IF EXISTS `mw_collection`;
CREATE TABLE `mw_collection` (
`collection_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '用户收藏关系 id',
`user_id` int(10) NOT NULL DEFAULT '0' COMMENT '用户id',
`type` tinyint(3) NOT NULL DEFAULT '1' COMMENT '收藏类型 1 文档 2 空间',
`resource_id` int(10) NOT NULL DEFAULT '0' COMMENT '收藏资源 id ',
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
PRIMARY KEY (`collection_id`),
KEY (`user_id`),
UNIQUE key (`user_id`, `resource_id`, `type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户收藏表';
-- --------------------------------
-- 用户关注表
-- --------------------------------
DROP TABLE IF EXISTS `mw_follow`;
CREATE TABLE `mw_follow` (
`follow_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '关注 id',
`user_id` int(10) NOT NULL DEFAULT '0' COMMENT '用户id',
`type` tinyint(3) NOT NULL DEFAULT '1' COMMENT '关注类型 1 文档 2 用户',
`object_id` int(10) NOT NULL DEFAULT '0' COMMENT '关注对象 id',
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
PRIMARY KEY (`follow_id`),
KEY (`user_id`),
KEY (`object_id`),
UNIQUE key (`user_id`, `object_id`, `type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户关注表';
-- --------------------------------
-- 文档日志表
-- --------------------------------
DROP TABLE IF EXISTS `mw_log_document`;
CREATE TABLE `mw_log_document` (
`log_document_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '文档日志 id',
`document_id` int(10) NOT NULL DEFAULT '0' COMMENT '文档id',
`space_id` int(10) NOT NULL DEFAULT '0' COMMENT '空间id',
`user_id` int(10) NOT NULL DEFAULT '0' COMMENT '用户id',
`action` tinyint(3) NOT NULL DEFAULT '1' COMMENT '动作 1 创建 2 修改 3 删除',
`comment` varchar(255) NOT NULL DEFAULT '' COMMENT '备注信息',
`create_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
PRIMARY KEY (`log_document_id`),
KEY (`document_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='文档日志表';
-- --------------------------------
-- 系统操作日志表
-- --------------------------------
DROP TABLE IF EXISTS `mw_log`;
CREATE TABLE `mw_log` (
`log_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '系统操作日志 id',
`level` tinyint(3) NOT NULL DEFAULT '6' COMMENT '日志级别',
`path` char(100) NOT NULL DEFAULT '' COMMENT '请求路径',
`get` text NOT NULL COMMENT 'get参数',
`post` text NOT NULL COMMENT 'post参数',
`message` varchar(255) NOT NULL DEFAULT '' COMMENT '信息',
`ip` char(100) NOT NULL DEFAULT '' COMMENT 'ip地址',
`user_agent` char(200) NOT NULL DEFAULT '' COMMENT '用户代理',
`referer` char(100) NOT NULL DEFAULT '' COMMENT 'referer',
`user_id` int(10) NOT NULL DEFAULT '0' COMMENT '用户id',
`username` char(100) NOT NULL DEFAULT '' COMMENT '用户名',
`create_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
PRIMARY KEY (`log_id`),
KEY (`level`, `username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='系统操作日志表';
-- --------------------------------
-- 邮件服务器表
-- --------------------------------
DROP TABLE IF EXISTS `mw_email`;
CREATE TABLE `mw_email` (
`email_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '邮箱 id',
`name` varchar(100) NOT NULL DEFAULT '' COMMENT '邮箱服务器名称',
`sender_address` varchar(100) NOT NULL DEFAULT '' COMMENT '发件人邮件地址',
`sender_name` varchar(100) NOT NULL DEFAULT '' COMMENT '发件人显示名',
`sender_title_prefix` varchar(100) NOT NULL DEFAULT '' COMMENT '发送邮件标题前缀',
`host` char(100) NOT NULL DEFAULT '' COMMENT '服务器主机名',
`port` int(5) NOT NULL DEFAULT '25' COMMENT '服务器端口',
`username` varchar(50) NOT NULL DEFAULT '' COMMENT '用户名',
`password` varchar(50) NOT NULL DEFAULT '' COMMENT '密码',
`is_ssl` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否使用ssl 0 默认不使用 1 使用',
`is_used` tinyint(3) NOT NULL DEFAULT '0' COMMENT '是否被使用, 0 默认不使用 1 使用',
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(11) NOT NULL DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`email_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='邮件服务器表';
-- --------------------------------
-- 快捷链接表
-- --------------------------------
DROP TABLE IF EXISTS `mw_link`;
CREATE TABLE `mw_link` (
`link_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '链接 id',
`name` varchar(50) NOT NULL DEFAULT '' COMMENT '链接名称',
`url` varchar(100) NOT NULL DEFAULT '' COMMENT '链接地址',
`sequence` int(10) NOT NULL DEFAULT '0' COMMENT '排序号(越小越靠前)',
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(11) NOT NULL DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`link_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='快捷链接表';
-- --------------------------------
-- 统一登录认证表
-- --------------------------------
DROP TABLE IF EXISTS `mw_login_auth`;
CREATE TABLE `mw_login_auth` (
`login_auth_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '认证表主键ID',
`name` varchar(30) NOT NULL COMMENT '登录认证名称',
`username_prefix` varchar(30) NOT NULL COMMENT '用户名前缀',
`url` varchar(200) NOT NULL COMMENT '认证接口 url',
`ext_data` varchar(500) NOT NULL DEFAULT '' COMMENT '额外数据: token=aaa&key=bbb',
`is_used` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否被使用, 0 默认不使用 1 使用',
`is_delete` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否删除 0 否 1 是',
`create_time` int(11) NOT NULL COMMENT '创建时间',
`update_time` int(11) NOT NULL COMMENT '更新时间',
PRIMARY KEY (`login_auth_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='统一登录认证表';
-- --------------------------------
-- 全局配置表
-- --------------------------------
DROP TABLE IF EXISTS `mw_config`;
CREATE TABLE `mw_config` (
`config_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '配置表主键Id',
`name` varchar(100) NOT NULL DEFAULT '' COMMENT '配置名称',
`key` char(50) NOT NULL DEFAULT '' COMMENT '配置键',
`value` text NOT NULL COMMENT '配置值',
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(11) NOT NULL DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`config_id`),
unique KEY (`key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='全局配置表';
-- --------------------------------
-- 系统联系人表
-- --------------------------------
DROP TABLE IF EXISTS `mw_contact`;
CREATE TABLE `mw_contact` (
`contact_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '联系人 id',
`name` varchar(50) NOT NULL DEFAULT '' COMMENT '联系人名称',
`mobile` char(13) NOT NULL DEFAULT '' COMMENT '联系电话',
`email` varchar(50) NOT NULL DEFAULT '' COMMENT '邮箱',
`position` varchar(100) NOT NULL DEFAULT '' COMMENT '联系人职位',
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(11) NOT NULL DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`contact_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='联系人表';
-- --------------------------------
-- 附件信息表
-- --------------------------------
DROP TABLE IF EXISTS `mw_attachment`;
CREATE TABLE `mw_attachment` (
`attachment_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '附件 id',
`user_id` int(10) NOT NULL DEFAULT '0' COMMENT '创建用户id',
`document_id` int(10) NOT NULL DEFAULT '0' COMMENT '所属文档id',
`name` varchar(50) NOT NULL DEFAULT '' COMMENT '附件名称',
`path` varchar(100) NOT NULL DEFAULT '' COMMENT '附件路径',
`source` tinyint(1) NOT NULL DEFAULT '0' COMMENT '附件来源, 0 默认是附件 1 图片',
`create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间',
`update_time` int(11) NOT NULL DEFAULT '0' COMMENT '更新时间',
PRIMARY KEY (`attachment_id`),
KEY (`document_id`, `source`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='附件信息表';