首頁 後端開發 php教程 基於mysql的bbs設計(二)_PHP教程

基於mysql的bbs設計(二)_PHP教程

Jul 21, 2016 pm 04:03 PM
bbs mysql 關鍵 記憶體 分配 合理 基於 效率 資料庫 設計 還是 問題

3。資料庫設計
  關鍵還是mysql的效率問題,合理分配mysql的內存,特別是table cache的
大小。另外,當系統突然掉電呢? mysql是否robust?
  table的名字設計,採用一位前綴表明類型,全部以小寫表示(?),例如:
系統的資料庫,以s為前導,如用戶表:suser(sUSER 呢?),具體如下:
  s :系統表,suser,sclass
  m :使用者信件表,msysop,mdrangon
  w :使用者訊息表,wsysop,wdrangon
 >  b :版面文章表,blinux,bcampus
  c :特殊分類版面表,cnewboard
  i :精華區索引表,ilinux,ilinux01,icampus,icampus04
  另外,是使用字​​串還是數字作為識別呢?例如,一個叫sysop的帳號,其
id是1,他的信的表是msysop還是m00001呢?同樣,一個叫campus的版,對應的
代碼是5,則這個版的文章的表名是bcampus還是b00005呢?可能用字符串會容易
理解,查錯吧。

  使用者資訊表:suser
  usernum int unique, // 唯一識別符,最多30,000個帳號,會不會太少了?
  userid char[20] primary key, // 排序的關鍵字,id,全小寫。
  passwd char[20], // 密碼,存放加密後的密文。
  realid char[20], // 實際id,大小寫混合。
  username  char[24], // 使用者的泥名
  userlevel  longint,  // 64種權限?
  numlogins  int,
  numposts  int,
  firstlogin time,
  lastlogin     char[32],
  email varchar[100],
  address   varchar[100],
  // 還需要其他資料嗎?是否需要留出一定的保留值,以後alter table來
  // 增加新的欄位時,效率如何?

  版面分類表:sclass
  classnum  int unique, // 分類標識
  classid   char[20],  // 分類的英文id:comp分類的中文描述:電腦世界
  classtable char[20],  // 特殊分類對應的版面表
  // 一般來說,每個版面只屬於一個分類,對於特殊分類,例如拳頭版塊,
  // 新版面,可以用專門的表來描述

  版面表:sboard
  boardnum  int unique,   /////////已被識別為嗎? // 版面的英文名
  boardname  varchar[100],  // 版面的中文名稱
  boardclass char[20],    // 所屬分類
 >  boardposts int,      // 版面的文章數量
  boardlevel int,      // 版面的讀取和寫入權限
  indextable char[20], /id
  texttable  char[20],    // 版面對應的文章表名稱:  bboardid?
  // 最後兩項有沒有必要出現,是否可以作為必然對應關係,還是允許
  // 出現更大的彈性?另外版面的大小寫問題是否可以直接預設
  // 只為開頭字母大寫,

  特殊分類版面表:snewboard, sstarboard
  boardid   char[20], . >  // 這樣的表有必要嗎?

  版面索引表:acampus,alinux,afootball。 。 。 。 。 。
  id   int,      // 文章序數,且要手動調整? ? ? ?
  mark  char[1],    // 文章標記,m,g,b,d。 。 。 。
  title  varchar[100],  // 文章標題
  writer char[20],    // 文章作者   / 對應的編號? ? ?不調整

  版面文章表
  textnum   longint,  // 文章編號?
  textword  text,    // 文章內容?
  // 有必要將索引和文章內容分開嗎?從效率來看,況且lazy flush
  // 是必然的。刪除也是先做個標記。

  // 用戶中的版面文章是否未讀的資料比較繁,是否應該再建一堆的表
  // 才能實現呢?
  // 投票功能暫不考慮。 。 。 。


http://www.bkjia.com/PHPjc/316252.html

truehttp: //www.bkjia.com/PHPjc/316252.htmlTechArticle3。資料庫設計 關鍵還是mysql的效率問題,合理分配mysql的內存,特別是table cache的 大小。另外,當系統突然掉電呢? mysql是否robust? table的名稱...
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1666
14
CakePHP 教程
1425
52
Laravel 教程
1324
25
PHP教程
1272
29
C# 教程
1251
24
MySQL和PhpMyAdmin:核心功能和功能 MySQL和PhpMyAdmin:核心功能和功能 Apr 22, 2025 am 12:12 AM

MySQL和phpMyAdmin是強大的數據庫管理工具。 1)MySQL用於創建數據庫和表、執行DML和SQL查詢。 2)phpMyAdmin提供直觀界面進行數據庫管理、表結構管理、數據操作和用戶權限管理。

甲骨文在商業世界中的作用 甲骨文在商業世界中的作用 Apr 23, 2025 am 12:01 AM

Oracle不僅是數據庫公司,還是雲計算和ERP系統的領導者。 1.Oracle提供從數據庫到雲服務和ERP系統的全面解決方案。 2.OracleCloud挑戰AWS和Azure,提供IaaS、PaaS和SaaS服務。 3.Oracle的ERP系統如E-BusinessSuite和FusionApplications幫助企業優化運營。

在MySQL中解釋外鍵的目的。 在MySQL中解釋外鍵的目的。 Apr 25, 2025 am 12:17 AM

在MySQL中,外鍵的作用是建立表與表之間的關係,確保數據的一致性和完整性。外鍵通過引用完整性檢查和級聯操作維護數據的有效性,使用時需注意性能優化和避免常見錯誤。

比較和對比Mysql和Mariadb。 比較和對比Mysql和Mariadb。 Apr 26, 2025 am 12:08 AM

MySQL和MariaDB的主要區別在於性能、功能和許可證:1.MySQL由Oracle開發,MariaDB是其分支。 2.MariaDB在高負載環境中性能可能更好。 3.MariaDB提供了更多的存儲引擎和功能。 4.MySQL採用雙重許可證,MariaDB完全開源。選擇時應考慮現有基礎設施、性能需求、功能需求和許可證成本。

SQL與MySQL:澄清兩者之間的關係 SQL與MySQL:澄清兩者之間的關係 Apr 24, 2025 am 12:02 AM

SQL是一種用於管理關係數據庫的標準語言,而MySQL是一個使用SQL的數據庫管理系統。 SQL定義了與數據庫交互的方式,包括CRUD操作,而MySQL實現了SQL標準並提供了額外的功能,如存儲過程和触發器。

REDIS:了解其架構和目的 REDIS:了解其架構和目的 Apr 26, 2025 am 12:11 AM

Redis是一种内存数据结构存储系统,主要用作数据库、缓存和消息代理。它的核心特点包括单线程模型、I/O多路复用、持久化机制、复制与集群功能。Redis在实际应用中常用于缓存、会话存储和消息队列,通过选择合适的数据结构、使用管道和事务、以及进行监控和调优,可以显著提升其性能。

如何安全地將包含函數和正則表達式的JavaScript對象存儲到數據庫並恢復? 如何安全地將包含函數和正則表達式的JavaScript對象存儲到數據庫並恢復? Apr 19, 2025 pm 11:09 PM

安全地處理JSON中的函數和正則表達式在前端開發中,經常需要將JavaScript...

MySQL:數據庫,PHPMYADMIN:管理接口 MySQL:數據庫,PHPMYADMIN:管理接口 Apr 29, 2025 am 12:44 AM

MySQL和phpMyAdmin可以通過以下步驟進行有效管理:1.創建和刪除數據庫:在phpMyAdmin中點擊幾下即可完成。 2.管理表:可以創建表、修改結構、添加索引。 3.數據操作:支持插入、更新、刪除數據和執行SQL查詢。 4.導入導出數據:支持SQL、CSV、XML等格式。 5.優化和監控:使用OPTIMIZETABLE命令優化表,並利用查詢分析器和監控工具解決性能問題。

See all articles