mysql15--垂直分表水平分表


分表技術(表的結構不能變)
分表技術有(水平分割和垂直分割)

當一張越來越大時候,即使添加索引還慢的話,我們可以使用分表
以qq用戶表來具體的說明一下分表的操作.
思路如圖 :
首先我創建三張表 user0 / user1 /user2 , 然后我再創建 uuid表,該表的作用就是提供自增的id,   插入的時候插入到不同的表中去。
走代碼:
create table user0(
id int unsigned primary key ,
name varchar(32) not null default '',
pwd  varchar(32) not null default '')
engine=myisam charset utf8;

create table user1(
id int unsigned primary key ,
name varchar(32) not null default '',
pwd  varchar(32) not null default '')
engine=myisam charset utf8;

create table user2(
id int unsigned primary key ,
name varchar(32) not null default '',
pwd  varchar(32) not null default '')
engine=myisam charset utf8;


create table uuid(
id int unsigned primary key auto_increment)engine=myisam charset utf8;

n 垂直分割,把列拆分到不同的表。示意圖

一句話: 如果一張表某個字段,信息量大,但是我們很少查詢,則可以考慮把這些字段,單獨的放入到一張表中,這種方式稱為垂直分割.


數據庫只存儲路徑。圖片和文件存放在文件系統,甚至單獨放在一台服務器(圖床 / 視頻服務器 ). 數據庫是可以存視頻的。


mysql.ini:
port = 3306  端口是可以改的。
max_connections=200 ,mysql是中型數據庫,2000並發數是極限。但是做好緩存之后可以支持10萬沒問題。也可以做讀寫分離集群。
query_cache_size=15M,查詢緩存的大小。


innodb引擎,所以下面兩個參數調的很大 
innodb_additional_mem_pool_size = 64M
innodb_buffer_pool_size =1G       //緩存池
對於myisam,需要調整key_buffer_size
當然調整參數還是要看狀態,用show status語句可以看到當前狀態,以決定改調整哪些參數

如果你的機器內存超過4G,那么毋庸置疑應當采用64位操作系統和64位mysql 5.5.19,位越大是尋址范圍越大,

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM