Time of Update: 2017-02-28
mysql的root忘記,現無法操作資料庫停止mysql服務service mysql stop或者是ps -ef |grep mysql|xargs kill -9然後使用如下的參數啟動mysql, --skip-grant-tables會跳過mysql的授權shell#/usr/bin/mysqld_safe --skip-grant-tables &mysql -p 斷行符號,進入不要求輸入密碼mysql>mysql>update
Time of Update: 2017-02-28
環境:MySQL Sever 5.1 + MySQL命令列工具首先看個例子(主鍵是自增長):mysql> insert into bankaccount(name,balance) values('123', 1000); Query OK, 1 row affected (0.06 sec) mysql> insert into bankstatement(action, txdate, amt, toaccno, fromaccno) values('122',
Time of Update: 2017-02-28
環境MySQL Sever 5.1 + MySQL命令列工具問題ERROR 1064 (42000): You have an error inyour SQL syntax; check the manual that orresponds to your MySQL server versionfor the right syntax to use near 'order’解決表名使用了關鍵字,資料庫中命名要避免使用關鍵字。Hibernate中查詢語句為欄位起別名,
Time of Update: 2017-02-28
一、基本原則1、更小的通常更好更小的資料類型通常更快,因為佔用更少的磁碟、記憶體和CPU緩衝,並且處理時需要的CPU周期也更少。但是要確保沒有低估需要儲存的值的範圍,因為在schema中的多個地方增加資料類型的範圍是個非常耗時的操作。2、簡單就好例如,整數比字串操作代價更低,應該用內建類型而不是字串來儲存時間和日期,用整型儲存IP。3、盡量避免NULL可為NULL的列使用更多的儲存空間,需要特殊的處理。特別是可為NULL的列被索引時,每個索引需要額外的位元組,在Myisam引擎裡甚至還可能導致固
Time of Update: 2017-02-28
發現問題的時候,要確定是單條查詢的問題還是伺服器的問題,如果伺服器上的所有程式都變慢了,又突然都變好了,每一條查詢都變慢了,那麼慢查詢就不一定是原因,反過來說,如果伺服器整體運行沒有問題,只有某條查詢偶爾變慢,就需要將注意力放到這條特定查詢上。為了確定問題的根源,一般我們通過三種技術來解決。1、show global status這個方法實際就是以較高的頻率比如一秒執行一次show global status命令來捕獲資料,問題出現時,則通過某些計數器(比如
Time of Update: 2017-02-28
實際應用中,分析單條查詢SQL效能,有3種方法:show status、show profile和慢查詢日誌。一、使用SHOW PROFILE1、預設是禁用的,在會話中開啟#開啟profileset profiling=1;2、當一個查詢到達伺服器時,此工具會把分析資訊記錄到一張暫存資料表,並且給查詢賦予一個從1開始的整數標識符,可以通過show profiles查看。3、上面只顯示了時間上的精度,但是有些時候我們需要更多的資訊那麼,我們可以使用show profile for query 1;
Time of Update: 2017-02-28
一、剖析MySQL查詢1、首先從慢查詢開始,慢查詢是開銷最低,精度最高的測量查詢時間的工具。a、開始mysql的慢查詢,修改my.conf[mysqld]#開啟慢查詢log_slow_queries = ON#指定記錄檔存放位置,可以為空白,系統會給一個預設的檔案host_name-slow.loglog-slow-queries = /usr/local/mysq/var/slowquery.log#記錄超過的時間,預設為10slong_query_time =
Time of Update: 2017-02-28
一條簡單的SQL 陳述式竟花了15.87 sec,寫道mysql> SELECT x.loc AS loc, x.lastmod AS lastmod, x.changefreq AS changefreq, x.changecount AS changecount, x.priority AS priority, x.language AS language, x.ac cess AS access, x.status AS status FROM xmlsitemap x WHERE
Time of Update: 2017-02-28
Mysql 的完全備份有2種方式1 使用系統命令直接將Mysql資料拷貝進行備份例如/etc/init.d/mysqld stoptar cvfz /var/lib/mysql/mydb_backup.tar.gz /tmp/etc/init.d/mysqld start此種方法必須要先關閉Mysql服務,這也是一大弊端,而且此備份出的資料不支援不同版本的Mysql進行恢複!所以此法生產環境中很少用2 使用mysqldump 進行備份mysqldump
Time of Update: 2017-02-28
字串類型MySQL的字串分為兩大類:1)二進位字串:即一串位元組序列,對位元組的解釋不涉及字元集,因此它沒有字元集和排序方式的概念2)非二進位字串:由字元構成的序列,字元集用來解釋字串的內容,排序方式決定字元的大小字元集和排序方式字元集和排序方式的關係是這樣的:一個字元集可以有一個或多個排序方式,有一個預設的排序方式,我們可以通過 以下例子說明:mysql> show character set like '%gbk%'; +---------+---------------------
Time of Update: 2017-02-28
修改MySQl資料庫的root密碼可以通過以下幾種方式來進行:一、在已知MYSQL資料庫的ROOT使用者密碼的情況下,修改密碼的方法:1、在SHELL環境下,使用mysqladmin命令設定:mysqladmin –u root –p password “新密碼”斷行符號後要求輸入舊密碼2、在mysql>環境中,使用update命令,直接更新mysql庫user表的資料:Update mysql.user set
Time of Update: 2017-02-28
Mysql是一款開源的關係型資料庫軟體,它憑藉其高效能、高可靠性和便於使用的特性,成為伺服器領域中最受歡迎的開來源資料庫系統。目前互聯中使用Mysql資料的大多是一些web伺服器,因為當前比較流行使用PHP+Mysql做動態網站,所以今天講解的Mysql資料也是針對於網站的。如果有些地方解釋的不是很好,希望大家多多諒解,多多支援。謝謝大家!!!1、安裝前的準備工作如果以前有安裝過.rpm格式的mysql,在這裡需要將其卸載,以免出現程式或連接埠衝突。[root@lcoalhost /]#rpm
Time of Update: 2017-02-28
歸根到底,MySQL是運行在作業系統上的一個軟體,它需要藉助於檔案系統儲存資料,本文主要介紹MySQL資料目錄的 組織架構。資料目錄的位置可以通過以下幾個方法查看MySQL資料目錄的位置:1)對於一個正在啟動並執行MySQL伺服器來說,可以通過查看mysqld的進程擷取MySQL資料目錄的位置,如下所示:[root@lx202 /data/mysql/data ]# ps -ef|grep mysqld root 5841 7337 0 15:09 pts/1 00:00:
Time of Update: 2017-02-28
MySQL支援的資料類型非常多,選擇正確的資料類型對效能至關重要,本文談談如何正確選擇MySQL的資料類型。整數有以下幾種整數:TINYINT, SMAILLINT, MEDIUMINT, INT, BIGINT,分別使用8, 16, 24, 32, 64位儲存空間 。它們都有一個可選的UNSIGNED屬性,表示不允許負數。你可以為整數類型指定寬度,如INT(13),但對大多數應用
Time of Update: 2017-02-28
本文適用於新安裝的主庫和備庫,假定主備庫為空白,如果你是從已存在的主庫複製,請轉到《[MySQL] 複製(3)- 建立主備複製(從另一個伺服器開始複製)》主庫的配置主庫需要開啟二進位日誌,並制定一個唯一的server id,my.cnf檔案中增加或修改如下內容:server_id=60 log-bin = /data/mysql/log/mysql-bin備庫的配置備庫my.cnf的配置如下:server_id=61 read_only=1 log_bin =
Time of Update: 2017-02-28
複製的架構MySQL複製解決的基本問題是讓一台伺服器的資料與其它伺服器保持同步,它具有如下的特徵:1)非同步:這意味著,在同一時間點上備庫的資料可能與主庫不一致,並無法保證它們之間的延遲;2)向後相容:也就是說,備庫的版本可以高於主庫的版本,但不能低於主庫的版本下面是MySQL複製的架構圖:大致分為三個步驟:1)主庫所有的資料更改都記錄到二進位日誌2)備庫通過I/O線程把主庫的二進位日誌複製到備庫的中繼日誌3)備庫通過SQL線程讀取並應用中繼日誌上面這種複製架構使得I/O線程和SQL線程可以非同
Time of Update: 2017-02-28
線上執行主從配置步驟1.鎖表FLUSH TABLES WITH READ LOCK;2.拷貝資料檔案,或者匯出3.記錄下master的日誌位置master_log_filemaster_log_pos4.解除主庫鎖定UNLOCK TABLES;5.開始主從配置6.配置完主從並啟動之後,我們把從庫掛載到叢集中其他在從庫資料檔案夾下,有個master.info檔案,是從機器上特有的。重設從庫:用於讓從屬伺服器忘記其在主伺服器的二進位日誌中的複製位置, 它會刪除master.info和relay-
Time of Update: 2017-02-28
基於/application/search/mysql/mysql-5.5.28/support-files/my-innodb-heavy-4G.cnf二次最佳化【刪除--如果不使用主從同步】注釋,去除無用記錄檔# log-bin=mysql-bin# binlog_format=mixed【修改連結】# 最大連結值從100增加到512max_connections = 512# 錯誤連結從10改到100max_connect_errors = 100【*修改線程數】# CPU邏輯線程數的2-
Time of Update: 2017-02-28
Explain文法EXPLAIN SELECT ……變體:1. EXPLAIN EXTENDED SELECT ……將執行計畫“反編譯”成SELECT語句,運行SHOW WARNINGS 可得到被MySQL最佳化器最佳化後的查詢語句2. EXPLAIN PARTITIONS SELECT
Time of Update: 2017-02-28
MySQL作為一種低成本、高效能、可靠性良好而且開源的資料庫產品,在互連網企業中應用非常廣泛。例如,淘寶網就有數千台MySQL伺服器。雖然近兩年來NoSQL的發展很快,新產品層出不窮,但在業務中應用NoSQL對開發人員來說要求比較高,而MySQL擁有成熟的中介軟體、營運工具, 已經形成一個良性的生態圈。因此,在現階段的應用中仍然以MySQL為主,NoSQL為輔。在過去一年裡,我們在MySQL託管平台方向做了大量工作,設計和實現了一套UMP(Unified MySQL