檢視索引檢視索引mysql> show index from tblname;
show variables like 'innodb_buffer_pool_size';//占用記憶體最大的一塊,用來存放各種資料的快取。
包括資料頁,索引頁,插入緩衝(insert buffer),鎖資訊,自適應hash索引,資料字典資訊
show variables like 'innodb_additional_mem_pool_size';//設定 innodb 儲存的資料目錄資訊和其它內部資料結構的記憶體池大小
show variables like 'innodb_log_buffer_size';//這個引數設定 innodb 用來往磁碟上的日誌檔案寫操作的緩衝區的大小。這有點像 oracle 的 log_buffer ,通過記憶體緩衝來延緩磁碟 i/o 以提高訪問的效率。 因為 mysql 每秒都會將日誌緩衝區的內容重新整理到日誌檔案,因此無需設定超過 1 秒所需的記憶體空間。通常設定為 8 ~ 16mb 就足夠了,預設值是 1mb 。
show variables like 'thread_stack';
set @kilo_bytes = 1024;
set @mega_bytes = @kilo_bytes * 1024;
set @giga_bytes = @mega_bytes * 1024;
set @innodb_buffer_pool_size = 2 * @giga_bytes;
set @innodb_additional_mem_pool_size = 16 * @mega_bytes;
set @innodb_log_buffer_size = 8 * @mega_bytes;
set @thread_stack = 192 * @kilo_bytes;
檢視表結構:
explain tbl_name是describe tbl_name或show columns from tbl_name的乙個同義詞。
乙個表占用空間的大小,那就相當於是資料大小 + 索引大小
select table_name,data_length+index_length,table_rows from tables where table_schema='資料庫名' and table_name='表名'
修正列長度上的不同,使用alter table tt將actualpc的長度從10個字元變為15個字元:
mysql>alter table tt modify actualpc varchar(15);
查詢資料庫中的儲存過程
方法一:
select`name`frommysql.procwheredb='your_db_name'and`type`='procedure'
方法二:
showprocedurestatus;
檢視儲存過程或函式的建立**
showcreateprocedureproc_name;
showcreatefunctionfunc_name;
使用命令建立mysql 用命令建立MySQL資料庫
一 連線mysql 1 連線到本機上的mysql。首先開啟dos視窗,然後進入目錄mysql bin,再鍵入命令mysql u root p,回車後提示你輸密碼.注意使用者名稱前可以有空格也可以沒有空格,但是密碼前必須沒有空格,否則讓你重新輸入密碼.如果剛安裝好mysql,超級使用者root是沒有密...
使用命令建立mysql 用命令建立MySQL資料庫
一 連線mysql 1 連線到本機上的mysql。首先開啟dos視窗,然後進入目錄mysql bin,再鍵入命令mysql u root p,回車後提示你輸密碼.注意使用者名稱前可以有空格也可以沒有空格,但是密碼前必須沒有空格,否則讓你重新輸入密碼.如果剛安裝好mysql,超級使用者root是沒有密...
Mysql 之 快取更新策略
業務角度,對於讀操作很少的,造成效能浪費 執行緒安全角度,容易產生資料髒讀 執行緒a更新了資料庫,執行緒b更新了資料庫,b更新了快取,a更新了快取 錯誤情況 請求a進行寫操作,刪除快取 請求b查詢發現快取不存在,讀取資料庫,寫入快取 請求a將資料寫入資料庫 解決方法 採用延時雙刪除法 在a寫入資料庫...