Time of Update: 2018-12-08
一、自動備份:將以下代碼儲存為*.bat批處理指令碼,然後再添加Windows定時作業,如每天淩晨2點執行: set s=%date:~0,4%%date:~5,2%%date:~8,2%%time:~1,1%%time:~3,2%%time:~6,2% mysqldump -u root -ppassword databasename > d:\databasename_%s%_bak.sql 說明:databasename 為資料庫名
Time of Update: 2018-12-08
方法一: select `name` from mysql.proc where db = 'your_db_name' and `type` = 'PROCEDURE' //預存程序 select `name` from mysql.proc where db = 'your_db_name' and `type` = 'FUNCTION' //函數 方法二: show procedure status; //預存程序 SHOW PROCEDURE STATUS WHERE
Time of Update: 2018-12-08
MyISAM類型的表強調的是效能,其執行數度比InnoDB類型更快,但是不提供事務支援,而InnoDB提供事務支援已經外部鍵等進階資料庫功能。 MyIASM是IASM表的新版本,有如下擴充: 二進位層次的可移植性。 NULL列索引。 對變長行比ISAM表有更少的片段。 支援大檔案。 更好的索引壓縮。 更好的鍵嗎統計分布。 更好和更快的auto_increment處理。 以下是一些細節和具體實現的差別: 1.InnoDB不支援FULLTEXT類型的索引。 2.InnoDB
Time of Update: 2018-12-08
在my.ini(linux下/etc/my.cnf)加上skip-innodb,就可以了。 我這樣設定後,在linux下都沒問題,今天在我本機winXP啟動MYSQL,提示啟動不起來。看下mysql目錄的錯誤記錄檔: 引用 090613 10:15:27 [ERROR] Default storage engine (InnoDB) is not available 090613 10:15:27 [ERROR] Aborting 090613 10:15:27 [Note]
Time of Update: 2018-12-08
同MongoDB,Redis這樣的NoSQL資料庫的複製相比,MySQL複製顯得相當複雜! 概述 首先主伺服器把資料變化記錄到主日誌,然後從伺服器通過I/O線程讀取主伺服器上的主日誌,並且把它寫入到從伺服器的中繼日誌中,接著SQL線程讀取中繼日誌,並且在從伺服器上重放,從而實現MySQL複製。具體如所示: 整個過程反映到從伺服器上,對應三套日誌資訊,可在從伺服器上用如下命令查看: 複製代碼 代碼如下:mysql> SHOW SLAVE STATUS; Master_Log_File
Time of Update: 2018-12-08
LEN ( string_expression )參數:要計算的字串返回指定字串運算式的字元數,其中不包含尾隨空格。如果 expression 的資料類型為 varchar(max)、nvarchar(max) 或 varbinary(max),則為 bigint;否則為 int。不可以對ntext欄位進行計算DATALENGTH ( expression ) 參數:任何資料類型的運算式返回用於表示任何錶達式的位元組數。如果 expression 的資料類型為
Time of Update: 2018-12-08
一、安裝MySQL 目前web伺服器已經很少有跑靜態頁面的,如果要跑動態網站那當然就離不開資料庫,雖然在以前文章中有寫MySQL是怎麼安裝的,但是感覺好久沒裝MySQL,現在只把步驟貼出來,就不做過多的講解了#useradd mysql#tar zxvf mysql-5.0.40.tar.gz#cd mysql-5.0.40#./configure --prefix=/usr/local/mysql#make && make
Time of Update: 2018-12-08
為了防止安全隱患,我們一般針對每個資料庫都設定了獨立的資料庫訪問帳號,該帳號僅有訪問該資料庫的許可權。下面就讓我們來具體示範一下: 1、首先我們要登陸phpMyAdmin,不做示範。 2、建立一個資料庫,如,在phpMyAdmin右邊視窗中,填寫資料庫名稱,點建立即可。 例如我們這裡建立一個名字為:cncmstest 的資料庫
Time of Update: 2018-12-08
雖然有許多基於GUI的MySQL用戶端存在,如著名的phpMyAdmin和SQLYog,但我一直喜歡原生的MySQL命令列用戶端,的確,在未熟悉這些命令列介面(CLI)之前,我們需要花一些時間來熟悉它們,特別是你平時不是經常在具有強大的CLI環境的作業系統下工作時,但只要經過一些練習,你就可以通過CLI系統管理使用者,瀏覽你的資料庫和執行其它任務,其快感是其它人體會不到的。在這篇文章中,我將會介紹我在工作中積累起來的一些MySQL命令列用戶端技巧,不管你嘗試其中一個還是所有技巧,我敢保證你一定會
Time of Update: 2018-12-08
安裝好mysql後,配製檔案應該在/usr/local/mysql/share/mysql目錄中,配製檔案有幾個,有my- huge.cnf my-medium.cnf my-large.cnf my-small.cnf,不同的流量的網站和不同配製的伺服器環境,當然需要有不同的配製檔案了。 一般的情況下,my-medium.cnf這個配製檔案就能滿足我們的大多需要;一般我們會把設定檔拷貝到/etc/my.cnf 只需要修改這個設定檔就可以了,使用mysqladmin variables
Time of Update: 2018-12-08
在MySQL資料庫中,支援單項、非同步複製。在複製過程中,一個伺服器充當主伺服器,而另外一台伺服器充當從伺服器。如所示。此時主伺服器會將更新資訊寫入到一個特定的二進位檔案中。並會維護檔案的一個索引用來追蹤記錄檔迴圈。這個日誌可以記錄並發送到從伺服器的更新中去。當一台從伺服器串連到主伺服器時,從伺服器會通知主服器從伺服器的記錄檔中讀取最後一次成功更新的位置。然後從伺服器會接收從那個時刻起發生的任何更新,然後鎖住並等到主伺服器通知新的更新。這就是MySQL伺服器資料庫複寫原理的基本說明。作為資料庫管
Time of Update: 2018-12-08
公司網站訪問量越來越大,MySQL自然成為瓶頸,因此最近我一直在研究 MySQL 的最佳化,第一步自然想到的是 MySQL 系統參數的最佳化,作為一個訪問量很大的網站(日20萬人次以上)的資料庫系統,不可能指望 MySQL 預設的系統參數能夠讓 MySQL運行得非常順暢。以下的文章主要介紹的是對MySQL伺服器的最佳化配置的時機操作步驟,同時本文也介紹了MySQL伺服器的最佳化配置的實際應用代碼,如果你對其相關的實際應用感興趣的話,你就可以點擊以下的文章對其進行瞭解。
Time of Update: 2018-12-08
在Apache, PHP, MySQL的體系架構中,MySQL對於效能的影響最大,也是關鍵的核心部分。對於Discuz!論壇程式也是如此,MySQL的設定是否合理最佳化,直接影響到論壇的速度和承載量!同時,MySQL也是最佳化難度最大的一個部分,不但需要理解一些MySQL專業知識,同時還需要長時間的觀察統計並且根據經驗進行判斷,然後設定合理的參數。
Time of Update: 2018-12-08
還原一個資料庫:mysql -h localhost -u root -p123456 www<c:\www.sql 備份一個資料庫:mysqldump -h localhost -u root -p123456 www > d:\www2008-2-26.sql //以下是在程式中進行測試 //$command = "mysqldump --opt -h $dbhost -u $dbuser -p $dbpass $dbname | gzip > $backupFile";
Time of Update: 2018-12-08
一、從 4.0 到 4.1 的主要變化 如果在4.1.0到4.1.3版本的MySQL中建立了包含 TIMESTAMP 欄位的 InnoDB表。則在升級到4.1.4及更高時需要重建表,因為儲存格式發生變化了 字串根據標準SQL來比較:比較之前不刪除末尾的空格,以前用末尾空格擴充了比較短的字串。現在的結果是'a' > 'a\t',以前則不這樣。可以用 mysqlcheck 來檢查一下資料表 TIMESTAMP 返回 'YYYY-MM-DD HH:MM:SS' 格式的字串。在MySQL
Time of Update: 2018-12-08
首先在建立資料庫時一定要注意產生原資料庫相同的編碼形式,如果已經產生可以用phpmyadmin等工具再整理一次,防止資料庫編碼和表的編碼不統一造成亂碼。 方法一: 通過增加參數 –default-character-set = utf8 解決亂碼問題 mysql -u root -p password < path_to_import_file –default-character-set = utf8 方法二: 在命令列匯入亂碼解決 1. use database_name; 2.
Time of Update: 2018-12-08
mysql全文檢索搜尋,sql的寫法: MATCH (col1,col2,…) AGAINST (expr [IN BOOLEAN MODE | WITH QUERY EXPANSION]) 比如: SELECT * FROM articles WHERE MATCH (title,body) AGAINST ('database'); MATCH()函數對於一個字串執行資料庫內的自然語言搜尋。一個資料庫就是1套1個或2個包含在FULLTEXT內的列。搜尋字串作為對
Time of Update: 2018-12-08
朋友主機(Windows 2003 + IIS + PHP + MYSQL )近來 MySQL 服務進程 (mysqld-nt.exe) CPU 佔用率總為 100% 高居不下。此主機有10個左右的 database, 分別給十個網站調用。據朋友測試,導致 mysqld-nt.exe cpu 佔用奇高的是網站A,一旦在 IIS 中將此網站停止服務,CPU 佔用就降下來了。一啟用,則馬上上升。 MYSQL CPU 佔用 100% 的解決過程 今天早上仔細檢查了一下。目前此網站的七日平均日 IP
Time of Update: 2018-12-08
要隨機產生字串代碼如下: 在MySQL中定義一個隨機串的方法,然後再SQL語句中調用此方法。 隨機串函數定義方法: 複製代碼 代碼如下:CREATE DEFINER=`root`@`localhost` FUNCTION `rand_string`(n INT) RETURNS varchar(255) CHARSET latin1 BEGIN DECLARE chars_str varchar(100) DEFAULT
Time of Update: 2018-12-08
1、一種方法是可以設定表或行的collation,使其為binary或case sensitive。在MySQL中,對於Column Collate其約定的命名方法如下: *_bin: 表示的是binary case sensitive collation,也就是說是區分大小寫 *_cs: case sensitive collation,區分大小寫 *_ci: case insensitive collation,不區分大小寫 ########### # Start binary