Time of Update: 2017-01-18
一、前言:當資料庫伺服器建立好以後,我們首先要做的不是考慮要在這個支援資料庫的伺服器運行哪些受MySQL提攜的程式,而是當資料庫遭到破壞後,怎樣安然恢複到最後一次正常的狀態,使得資料的損失達到最小。或者說,僅僅是資料庫伺服器的建立,只能說明它能做些什麼,並不代表它能穩定的做些什麼。災難恢複的效率及全面性,也是系統的穩定性的一個準因素,尤其對於一個伺服器系統。這一節,介紹資料庫自動備份以及資料庫被破壞後的恢複的方法。在這裡,我們使用mysqlhotcopy,並且定義一段Shell指令碼來實現資料庫
Time of Update: 2017-01-18
1。如果用戶端和伺服器端的串連需要跨越並通過不可信任的網路,那麼就需要使用SSH隧道來加密該串連的通訊。 2。用set password語句來修改使用者的密碼,三個步驟,先“mysql -u root”登陸資料庫系統,然後“mysql> update mysql.user set password=password('newpwd')”,最後執行“flush privileges”就可以了。 3。需要提防的攻擊有,防偷聽、篡改、回放、拒絕服務等,不涉及可用性和容錯方面。對所有的串連、查詢、
Time of Update: 2017-01-18
解決方案: 1。 改表法。 可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那台電腦,登入mysql後,更改 "mysql" 資料庫裡的 "user" 表裡的 "host" 項,從"localhost"改稱"%" 複製代碼 代碼如下:mysql -u root -pvmwaremysql>use mysql; mysql>update user set host = '%' where user = 'root';
Time of Update: 2017-01-18
只需按照下面3步做,一切都在你的掌控之下: 第一步:在伺服器上配置備份目錄代碼: -------------------------------------------------------------------------------- mkdir /var/lib/mysqlbackup cd /var/lib/mysqlbackup -----------------------------------------------------------------------------
Time of Update: 2017-01-18
MySQL的內建引擎肯定是夠用了,但是在有些情況下,其他的引擎可能要比手頭所用更適合完成任務。如果願意的話,你甚至可以使用MySQL++ API來建立自己的資料庫引擎,就像打穿氣缸裝上自己的化油器。現在讓我們來看看你該如何選擇引擎,以及如何在可用引擎之間切換。 選擇你的引擎
Time of Update: 2017-01-18
在d:盤根目錄下面存放備份資料庫,備份資料庫名字為backup20070713.sql(20070713.sql為備份日期) 備份資料庫: mysqldump -uroot -p123456 database_name>d:/backup20070713.sql 恢複資料庫: 刪除原有資料庫,建立資料庫,把備份資料庫匯入。 mysqladmin -uroot -p123456 drop database_name mysqladmin -uroot -p123456
Time of Update: 2017-01-18
LOCATE(substr,str) POSITION(substr IN str) 返回子串 substr 在字串 str 中第一次出現的位置。如果子串 substr 在 str 中不存在,傳回值為 0: mysql> SELECT LOCATE('bar', ‘foobarbar'); -> 4 mysql> SELECT LOCATE('xbar', ‘foobar'); -> 0 這個函數是多位元組安全的。在 MySQL 3.23 中,這個函數是字母大小寫敏感的,
Time of Update: 2017-01-18
因為硬碟滿了,mysql啟動不起來了。 登入上去看了一下,發現原因。 刪除mysql的記錄檔,重啟mysql發現錯誤:Starting MySQL.Manager of pid-file quit without updating file.[FAILED] 網上有不少這個原因的解釋,但是都不是我想說的。我要說的原因其實很白癡:data/mysql-bin.index沒有刪除,data/mysql-bin.index是存放記錄檔索引的檔案,只刪除了記錄檔而沒有對日誌的索引檔案做處理顯然是不行的。
Time of Update: 2017-01-18
我們都知道當我們建立資料表(innodb或myisam)時,會產生相應的檔案(如:MYD,MYI,frm) 在這裡,我們探討下使用frm檔案恢複 innodb和myisam類型表的結構,不過由於他們儲存引擎的特性,所以恢複的方法也不一樣,以下是詳細的恢複過程。 myisamchk "xxx.frm" myisamchk 可以試出來,庫是不是 myisam 類型 1:恢複innodb類型資料表結構 我們先從test資料目錄 copy一個innodb.frm檔案到另外一個庫(innodb)
Time of Update: 2017-01-18
這些問題可能導致資料值的改變。一般而言,上述問題可能在你使用非二進位串資料類型(如char,varchar,text等資料類型)的情況下發生。 AES_ENCRYPT()和AES_DECRYPT() AES_ENCRYPT()和AES_DECRYPT()可以加密/解密使用官方AES演算法的資料。該演算法使用128位密鑰來編碼,但使用者可以將其擴充到256位。MySQL選用128位密鑰,因為這樣演算法實現更快,而且對大多數使用者而言它也足夠安全了。 AES_ENCRYPT(str,key_str)
Time of Update: 2017-01-18
1.建立主鍵文法 ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(列名); 2.建立外鍵文法 ALTER TABLE news_info[子表名] ADD CONSTRAINT FK_news_info_news_type[約束名] FOREIGN KEY (info_id)[子表列] REFERENCES news_type[主表名] (id)[主表列] ; 3.使用組合主鍵
Time of Update: 2017-01-18
三種解決方案: 1、改表法。可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那台電腦,登入mysql後,更改 "mysql" 資料庫裡的 "user" 表裡的 "host" 項,從"localhost"改稱"%" mysql -u root -pvmware mysql>use mysql; mysql>update user set host = '%' where user = 'root';
Time of Update: 2017-01-18
當我們去設計資料庫表結構,對操作資料庫時(尤其是查表時的SQL語句),我們都需要注意資料操作的效能。這裡,我們不會講過多的SQL語句的最佳化,而只是針對MySQL這一Web應用最多的資料庫。希望下面的這些最佳化技巧對你有用。 1. 為查詢快取最佳化你的查詢 大多數的MySQL伺服器都開啟了查詢快取。這是提高性最有效方法之一,而且這是被MySQL的資料庫引擎處理的。當有很多相同的查詢被執行了多次的時候,這些查詢結果會被放到一個緩衝中,這樣,後續的相同的查詢就不用動作表而直接存取緩衝結果了。
Time of Update: 2017-01-18
也就是說 mysql每次連結都會開啟一個串連的進程而mysqli多次運行mysqli將使用同一串連進程,從而減少了伺服器的開銷 有些朋友在編程的時候,使用new mysqli('localhost', usenamer', 'password', 'databasename');總是報錯,Fatal error: Class 'mysqli' not found in d:\... mysqli類不是php內建的嗎?
Time of Update: 2017-01-18
1、從MYSQL官方下載MYSQL的源碼版本【一定要是源碼版本】 2、按以下代碼鍵入LINUX命令列 複製代碼 代碼如下: [注] 添加mysql組和使用者 #groupadd mysql #useradd -g mysql mysql [注] 解包到/usr/local # tar -xzf mysql-standard-4.1.9-pc-linux-gnu-i686.tar.gz -C /usr/local [注] 建立軟連結,方便操作(此處給此串連命名為mysql001,也可為其它的名字)
Time of Update: 2017-01-18
同時線上訪問量繼續增大 對於1G記憶體的伺服器明顯感覺到吃力嚴重時甚至每天都會死機 或者時不時的伺服器卡一下 這個問題曾經困擾了我半個多月MySQL使用是很具伸縮性的演算法,因此你通常能用很少的記憶體運行或給MySQL更多的被存以得到更好的效能。 安裝好mysql後,配製檔案應該在/usr/local/mysql/share/mysql目錄中,配製檔案有幾個,有my- huge.cnf my-medium.cnf my-large.cnf
Time of Update: 2017-01-18
用Vps什麼事都要自己費心,備份也是。像Linode裡的備份服務是要收費的,一個月是5美元。與其花這5美元,不如自己豐衣足食。為服務安裝上了Dropbox,設定為每天4:00-6:00 開啟同步服務。在之前運行兩個指令碼,自動備份web檔案夾和mysql資料庫。 兩個指令碼都是備份檔案到/root/Dropbox/backup目錄裡,並自動刪除10天前的備份。web備份是每周行一次,刪除30天前的備份。 一、備份WEB檔案夾 1、備份/home/users/public_html目錄
Time of Update: 2017-01-18
ubuntu系統是一個linux作業系統;下面雲棲社區小編給大家介紹ubuntu mysql更改tmp路徑的方法。因為mysql經常要把檔案定入tmp目錄,而tmp的目錄為/tmp,為了提高效能,所以考慮更改tmpdir目錄為/run/shm,即使用記憶體來儲存。1、開啟/etc/mysql/my.cnf更改tmpdir = /tmp為tmpdir = /run/shm2、更改/etc/apparmor.d/usr.sbin.mysqld添加:/run/shm/*
Time of Update: 2017-01-18
說明:一個朋友在使用Ubuntu Server 16.04安裝MySQL,設定遠端存取的時候出現了問題,請我幫忙。但是,我也沒有使用過Ubuntu安裝MySQL,於是乎搜尋了很多技術檔案,比著葫蘆畫瓢。但是,由於MySQL版本的差異,導致在安裝設定的過程中出現了一些問題:就是不能遠端存取。一、安裝mysql1. 安裝需要使用root帳號,如果不會設定root帳號的請參考Linux公社的其他文章。安裝mysql過程中,需要設定mysql的root帳號的密碼,不要忽略了。sudo apt-get
Time of Update: 2017-01-18
使用mysqldump進行備份與還原使用mysqldump進行備份mysqladmin stop-slave -uroot -pmysqldump --all-databases > fulldb.dumpmysqladmin start-slave -uroot -ptar -czf /tmp/dbdump.tar.gz ./fulldb.dump