Time of Update: 2018-12-08
情況是這麼一個情況:現在有兩張表,team表和people表,每個people屬於一個team,people中有個欄位team_id。下面給出建表語句:複製代碼 代碼如下:create table t_team(id int primary key,tname varchar(100));create table t_people(id int primary key,pname varchar(100),team_id int,foreign key (team_id) references
Time of Update: 2018-12-08
MySQLTuner :http://github.com/rackerhacker/MySQLTuner-perlMySQLTuner 使用方法: Downloading and using MySQLTuner is actually a very simple process:wget mysqltuner.pl perl mysqltuner.pl If you'd rather not invoke perl every time, just make it
Time of Update: 2018-12-08
PHP頁面有一個瀏覽量統計每秒有200並發,造成insert給mysql造成很大壓力lnmp環境,其他頁面內容都做了緩衝了,沒有多大的負載,就是這個瀏覽量統計功能,給mysql帶來不小的壓力,請問諸位有什麼解決辦法嗎?怎麼都說不要用MySQL來做,每秒200並發對MySQL來說不算啥難事啊。而且換成Redis、Memcached,持久化姑且不說,業務代碼和營運部署量都不小。我給你幾個建議,盡量讓你的營運部署和業務代碼改動小一些。你可以做主從分離,不要在一個庫上高並發插入同時還做大量統計運算。分離
Time of Update: 2018-12-08
執行個體1、取得MYSQL的版本在windows環境下安裝mysql模組用於python開發MySQL-python Windows下EXE安裝檔案下載複製代碼 代碼如下:# -*- coding: UTF-8 -*-#安裝MYSQL DB for pythonimport MySQLdb as mdbcon = Nonetry: #串連mysql的方法:connect('ip','user','password','dbname') con =
Time of Update: 2018-12-08
關聯式資料庫依賴於主鍵,它是資料庫物理模式的基石。主鍵在物理層面上只有兩個用途: 惟一地標識一行。 作為一個可以被外鍵有效引用的對象。 索引是一種特殊的檔案(InnoDB資料表上的索引是資料表空間的一個組成部分),它們包含著對資料表裡所有記錄的引用指標。下面是主鍵和索引的一些區別與聯絡。 1. 主鍵一定是唯一性索引,唯一性索引並不一定就是主鍵。
Time of Update: 2018-12-08
記憶體表,就是放在記憶體中的表,所使用記憶體的大小可通過My.cnf中的max_heap_table_size指定,如max_heap_table_size=1024M,記憶體表與暫存資料表並不相同,暫存資料表也是存放在記憶體中,暫存資料表最大所需記憶體需要通過tmp_table_size =
Time of Update: 2018-12-08
1、如果同時從同一個用戶端插入很多行,使用含多個 VALUE的INSERT語句同時插入幾行。這比使用單行INSERT語句快(在某些情況下快幾倍)。如果你正向一個非空表添加資料,可以調節 bulk_insert_buffer_size變數,使資料插入更快。參見5.3.3 節,“伺服器系統變數”。 2、如果你從不同的用戶端插入很多行,能通過INSERT DELAYED語句加快速度。參見13.2.4 節,“INSERT文法”。
Time of Update: 2018-12-08
複製代碼 代碼如下:import osimport sysimport MySQLdbdef getStatus(conn): query = " SHOW SLAVE STATUS " # print query cursor = conn.cursor() cursor.execute(query) result = cursor.fetchall() return result[0]def resolve(conn): cursor = conn.
Time of Update: 2018-12-08
一、安裝 Nginx一條命令搞定:USE=fastcgi emerge nginx建立使用者和組:groupadd wwwuseradd www -g wwwNginx 安裝好後預設會添加 nginx 組和 nginx 使用者,不過我本身還是習慣建立個 www 組和 www 使用者來做 HTTP 服務使用者。若今後 HTTP 伺服器更換為 apache 或是 lighttpd 時,使用者名稱和使用者組可以不變。二、安裝 MySQL在裝 PHP 前必須先裝 MySQL,因為 PHP 裡的
Time of Update: 2018-12-08
軟體準備: mysql-5.0.56.tar.gzhttp://dev.mysql.com/get/Downloads/httpd-2.2.12.tar.gzhttp://labs.xiaonei.com/apache-mirror/httpd/php-5.3.0.tar.gzhttp://cn.php.net/get/php-5.3.0.tar.gz/from/this/mirror一、安裝MYSQL複製代碼 代碼如下:groupadd mysql
Time of Update: 2018-12-08
問題是這樣的:表persons有兩個欄位: id和name文字文件persons.txt中內容(其中每列欄位之間用tab分割):1 Bush2 Carter3 Bush在mysql命令列下使用 load data local infile “persons.txt” into table persons 匯入資料到persons表中。匯入後查看persons表的資料,與persons.txt的內容一致。但是使用語句select distinct name from
Time of Update: 2018-12-08
Sphinx的searchd精靈從版本0.9.9-rc2開始支援MySQL二進位網路通訊協定,並且能夠通過標準的MySQL API訪問。例如,“mysql”命令列程式可以很好地工作。以下是用MySQL用戶端對Sphinx進行查詢的例子:複製代碼 代碼如下:$ mysql -P 9306Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 1Server version: 0.9.9
Time of Update: 2018-12-08
搜尋子網域名稱比如搜尋jb51.net會把www.jb51.net、jb51.net、host.jb51.net等都搜尋出來。如果使用mysql用like的話效率是非常低的,幾百萬甚至上千萬的資料那是沒有辦法使用的,於是採取sphinx來做。在使用的過程中發現了諸多問題,這裡將其總結起來,也讓不知道的朋友注意下這些字元。分析:sphinx是全文索引,它搜尋的是包含的記錄。首先如果我們不做任何設定的話,搜尋jb51.net會出現把aajb51.net、jb51.a.cn、jb51.net.com(
Time of Update: 2018-12-08
建立使用者資訊表:複製代碼 代碼如下:CREATE TABLE tbl_auth_user (user_id VARCHAR(10) NOT NULL,user_password CHAR(32) NOT NULL,PRIMARY KEY (user_id));INSERT INTO tbl_auth_user (user_id, user_password) VALUES ('theadmin', PASSWORD('chumbawamba'));INSERT INTO
Time of Update: 2018-12-08
修改MySQL密碼:複製代碼 代碼如下:mysqladmin -u root -p password 123456mysqladmin -u使用者名稱 -p舊密碼 password 新密碼忘記MySQL密碼:複製代碼 代碼如下:chown -R mysql:mysql /var/lib/mysql /etc/init.d/mysql stop 或 kill -9 殺死進程。[root@corshetlpro01 bin]# cd
Time of Update: 2018-12-08
我們知道,mysqli是PHP 5中新提供的MySQL介面,此介面使用了物件導向的思想。使用mysqli介面的代碼可讀性更強,其執行效率比mysql介面高。而且mysqli提供了一個能夠一次執行多個SQL語句的multi_query()函數。但是,mysqli介面只支援PHP 5和MySQL
Time of Update: 2018-12-08
1.可能是/usr/local/mysql/data/rekfan.pid檔案沒有寫的許可權解決方案 :給予許可權,執行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data” 然後重新啟動mysqld!2.可能進程裡已經存在mysql進程解決方案:用命令“ps -ef|grep mysqld”查看是否有mysqld進程,如果有使用“kill -9
Time of Update: 2018-12-08
1、本地備份編寫自動備份指令碼:vim /var/lib/mysql/autobak內容如下:複製代碼 代碼如下:cd /data/home/mysqlbakrq=` date +%Y%m%d `/usr/local/mysql/bin/mysqldump sqldb --flush-logs -uroot -p123456 --opt > 777city_$rq.sql儲存退出。chmod -777 /var/lib/mysql/autobakcrontab -e00 00 * * *
Time of Update: 2018-12-08
每日淩晨2:00進行dump對相應資料庫進行備份,同時對相應資料庫進行binlog記錄檔更新。如果探索資料庫錯誤,只需要先恢複上一個dump的備份,然後再還原當天的binlog記錄檔。舉例:每日12:00執行:複製代碼 代碼如下:mysqldump database --flush-logs -uroot -p --opt > database_20020601.sql按照日期規則執行。如果想恢複到今早10點的資料庫,那麼:1、完整備份整個當前資料庫複製代碼 代碼如下:cd
Time of Update: 2018-12-08
1、查看當前字元集:複製代碼 代碼如下:SHOW CHARACTER SET;2、刪除mysql相關目錄複製代碼 代碼如下:rm -rf /usr/local/mysql/* 安裝目錄rm -rf /var/lib/mysql/mysql 資料庫目錄3、重新編譯複製代碼 代碼如下:./configure --prefix=/usr/local/mysql --sysconfdir=/etc --localstatedir=/var/lib/mysql