Time of Update: 2017-02-28
建立一個表格,一個是主鍵列,一個是索引列。然後插入一批資料,調用select * from test_b,可以發現輸出結果並沒有按照Id有序,而是按照Type有序。 如果希望按照Id有序,可以使用force index (primary)這一hint語句。 mysql> CREATE TABLE `test_b` ( -> `Id` int(11) NOT NULL, -> `Type` int(11) DEFAULT NULL, -> PRIMARY
Time of Update: 2017-02-28
mysql有一個功能就是可以log下來啟動並執行比較慢的sql語句,預設是沒有這個log的,為了開啟這個功能,要修改my.cnf或者在mysql啟動的時候加入一些參數。如果在my.cnf裡面修改,需增加如下幾行 long_query_time = 1 log-slow-queries = /var/youpath/slow.log log-queries-not-using-indexes long_query_time
Time of Update: 2017-02-28
客戶要求mysql-5.1.32是gbk的版本我從mysql.com下載了二進位源碼,不用編譯自己安裝就好了。後來查看到是latin1的語言~網上搜尋了半天,一篇有用的文章也沒有,都是在freebsd下如何重新安裝mysql-5.1.32,讓他支援gbk不得已。又搜尋了下找到了mysql5.1.32的源碼包,還是手動編譯自己心裡放心~從這裡下載http://dev.mysql.com/downloads/mysql/5.1.html
Time of Update: 2017-02-28
由於記錄檔是恢複資料庫資料的重要參考,因此記錄檔的維護也有十分重要的意義。當MySQL與記錄檔一起使用時,你有時想要刪除/備份舊的記錄檔 並且告訴MySQL在新檔案中開始記錄。本文涉及如何啟用新的記錄檔,包括更新日誌和常規日誌。這裡所述的方法,同樣也適用二進位日誌。如何使用新的更新日誌如果你只使用一個更新日誌,你只須清空記錄檔,然後移走舊的更新記錄檔到一個備份中,然後啟用新的更新日誌。用下列方法可以強制服務器啟用新的更新日誌:◆mysqladmin
Time of Update: 2017-02-28
你不可能隨時備份資料,但你的資料丟失時,或者資料庫目錄中的檔案損壞時, 你只能恢複已經備份的檔案,而在這之後的插入或更新的資料,就無能為力了。解決這個問題,就必須使用更新日誌。更新日誌可以即時記錄更新、插入和刪除記錄的SQL語句。啟用日誌當以--log-update=file_name選項啟動時,mysqld將所有更新資料的SQL命令寫入記錄檔案中。檔案被寫入資料目錄並且有一個名 字file_name.#,這裡#是一個數字,它在每次執行mysqladmin refresh或mysqladmin
Time of Update: 2017-02-28
大家都知道只有的了mysql 5後才出現了預存程序,這些用法,那麼我們要在sql 中用if else while這些,就得用存過程或函數來執行個體了。mysql> DELIMITER //mysql> CREATE FUNCTION myFunction (quantity INT(10)) RETURNS INT(10) -> BEGIN ->
Time of Update: 2017-02-28
MySQL預存程序的語句中有三個標準的迴圈方式:WHILE迴圈,LOOP迴圈以及REPEAT迴圈。還有一種非標準的迴圈方式:GOTO,不過這種迴圈方式最好別用,很容易引起程式的混亂,在這裡就不錯具體介紹了。今天我們先來看看LOOP迴圈mysql>mysql> delimiter $$mysql>mysql> CREATE PROCEDURE myProc() -> BEGIN
Time of Update: 2017-02-28
1. 從資料庫結構做起1. 欄位類型的定義時遵循以下規則:1. 選用欄位長度最小2. 優先使用定長型3. 儘可能的定義 "NOT NULL" 4. 數值型欄位中避免使用 "ZEROFILL" 5. 如果要儲存的資料為字串, 且可能值已知且有限, 優先使用 enum 或 set 2. 索引的最佳化至關重要(以下如果沒有特殊說明, 均指查詢密集的情況)(http://www.002pc.com) 1. 被索引的欄位的長度越小, 該索引的效率越高2.
Time of Update: 2017-02-28
當你建好了資料庫及表時,你首先想到的就是向資料庫的表中輸入資料.這就牽涉到如何向資料庫增加資料.下面我們就來探討一下這個問題: 1.一般我們常用的方法是insert語句(這裡假定各位的版本都不是很低).她有以下幾種形式: insert into tablename values(value1,value2,...) insert into tablename(fieldname1,fieldname2,...) values(value1,value2,...) insert
Time of Update: 2017-02-28
最近要做資料庫同步,如果網上找了例子,成功,記錄下來,下回再看. 這個是網上找的一編文章. 以下配置在本機上已經成功: 實現功能:A為主伺服器,B為從伺服器,初始狀態時,A和B中的資料資訊相同,當A中的資料發生變化時,B也跟著發生相應的變化,使得A和B的資料資訊同步,達到備份的目的。 環境: A、B的MySQL資料庫版本同為4.1.20 A: 作業系統:Windows 2003 server IP地址:192.168.100.1 B: 作業系統:Windows 2003
Time of Update: 2017-02-28
使用MySQL,安全問題不能不注意。以下是MySQL提示的23個注意事項:1。如果用戶端和伺服器端的串連需要跨越並通過不可信任的網路,那麼就需要使用SSH隧道來加密該串連的通訊。2。用set password語句來修改使用者的密碼,三個步驟,先“mysql -u root”登陸資料庫系統,然後“mysql> update mysql.user set
Time of Update: 2017-02-28
在MySQL資料庫操作中,我們常常編寫一些SQL語句來實現自己想要的功能。但是對於初學MySQL資料庫的人來說這似乎又有一定的難度。本文我們總結了六條比較有用的SQL語句,初學者可以套用下面的格式,接下來就讓我們一起來瞭解一下這部分內容。 1.計算年數 如果您想通過生日來計算這個人的年齡,可以用以下的語句來實現: SELECT DATE_FORMAT(FROM_DAYS(TO_DAYS(now()) - TO_DAYS(@dateofbirth)), '%Y') +
Time of Update: 2017-02-28
在網上看到介紹分區表的文章CREATE TABLE users (uid INT UNSIGNED NOT NULL PRIMARY KEY,name VARCHAR(30) NOT NULL DEFAULT '',email VARCHAR(30) NOT NULL DEFAULT '')PARTITION BY RANGE (uid) (PARTITION p0 VALUES LESS THAN (3000000)DATA DIRECTORY = '/data0/data'INDEX
Time of Update: 2017-02-28
mysql是linux平台下最流行的資料庫系統,今天介紹的是mysql的安裝及簡單的操作方法!groupadd mysql //建立mysql使用者組useradd -g mysql mysql //建立mysql帳戶tar -zxvf mysql-x.x.xx.tar.gz //解壓縮mysqlcd mysql-5.0.45 //進入解壓好的mysql目錄./configure –prefix=/usr/local/mysql –with-charset=utf8
Time of Update: 2017-02-28
在MySQL中對於使用表級鎖定的儲存引擎,表鎖定時不會死結的。這通過總是在一個查詢開始時立即請求所有必要的鎖定並且總是以同樣的順序鎖定表來管理。在一個update和insert操作頻繁的表中,少量資料測試的時候運行良好,在實際運營中,因資料量比較大(21萬條記錄),會出現死結現象,用show processlist查看,可以看到一個update語句狀態是Locked,一個delete語句狀態是Sending
Time of Update: 2017-02-28
首先設定MySQL主伺服器: 在主伺服器上為從伺服器建立一個使用者: 1.grant replication slave on *.* to 192.168.0.1 identified by '1234'; #4.1以後用這個,以前可以用 file. #grant file on *.* to 192.168.0.1 identified by '1234'; #後來我又加了super和client
Time of Update: 2017-02-28
我們討論的是資料庫效能最佳化的另一方面,即運用資料庫伺服器內建的工具輔助效能分析和最佳化。▲ SHOW 執行下面這個命令可以瞭解伺服器的運行狀態:mysql >show status;該命令將顯示出一長列狀態變數及其對應的值,其中包括:被中止訪問的使用者數量,被中止的串連數量,嘗試串連的次數,並發串連數量最大值,以及其他許多有用的資訊。這些資訊對於確定系統問題和效率低下的原因是十分有用的。SHOW命令除了能夠顯示出MySQL伺服器整體狀態資訊之外,它還能夠顯示出有關記錄檔、指定資料庫、表、
Time of Update: 2017-02-28
當你串連一個MySQL伺服器時,你通常應該使用一個口令。口令不以明文在串連上傳輸。所有其它資訊作為能被任何人讀懂的文本被傳輸。如果你擔心這個,你可使用壓縮協議(MySQL3.22和以上版本)使事情變得更難。甚至為了使一切更安全,你應該安裝SSH。用它,你能在一個MySQL伺服器與一個MySQL客戶之間得到一個加密的TCP/IP串連。為了使一個MySQL系統安全,強烈要求你考慮下列建議:對所有MySQL使用者使用口令。記住,如果other_user沒有口令,任何人能簡單地用mysql -u
Time of Update: 2017-02-28
前言:在LINUX下裝了MYSQL,剛裝完的時候把ROOT空密碼改了,當時也改了個好記的密碼,沒想到過了一個小時就忘記了,於是有了這篇恢複密碼過程筆記因為MySQL密碼儲存於資料庫mysql中的user表中所以只需要將我windows 2003下的MySQL中的user表拷貝過來覆蓋掉就行了在c:mysqldatamysql(linux 則一般在/var/lib/mysql/mysql/)目錄下有三個user表相關檔案user.frm、user.MYD、user.MYIuser.frm
Time of Update: 2017-02-28
在我轉到wordpress之後第一個考慮的是它的Database Backup恢複問題,因為寫bloger都知道,自己的blog記錄的都是自己需要的寶貴的資料和文字,如果因為各種未知因素導致資料庫崩潰或者空間商出了問題,丟失了資料的話,無疑是一種非常巨大的痛苦和損失。所以在我blog裡面有好幾篇資料文章或者自己心得文章來討論mysqlDatabase Backup恢複和亂碼問題。之前那些文章討論結果已經暫時能滿足我Database