注冊的解決
創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設(shè),懷寧企業(yè)網(wǎng)站建設(shè),懷寧品牌網(wǎng)站建設(shè),網(wǎng)站定制,懷寧網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,懷寧網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
DNF單擊版本資源
linux下mysql配置文件my點吸煙 f最詳細(xì)解釋與目錄
MyISAM 相關(guān)選項
INNODB 相關(guān)選項
安裝啟動、相關(guān)目錄
全文約 9945 字,預(yù)計閱讀時長: 28分鐘
注冊的解決
個人遇到的問題,是按下面這篇文章解決的
二、無法安裝vmnet8虛擬網(wǎng)絡(luò)適配器、vmware network editor未響應(yīng)、注冊失敗,請檢查賬號數(shù)據(jù)庫配置是否正確的解決
??單機(jī)版安裝的大頭主要是虛擬機(jī)的安裝。其余服務(wù)端,客戶端、補(bǔ)丁、輔助工具什么的只要放對文件,解壓沒問題,就可以按著教程一路next。注冊一個用戶,就是往某個數(shù)據(jù)庫的一個表中,插入一條SQL語句…,,一個表的一條記錄(玩家)與另一個庫中的某個表的一條記錄(玩家裝備等信息)相關(guān)聯(lián)
DNF單擊版本資源
??我最后找的是100級的版本,18個G。。其他版本教程安裝與資源見:DNF單機(jī)版搭建(局域網(wǎng)、外網(wǎng))
??100級的資源:微信搜索框搜索,dnf單機(jī)版下載,有個溯源百級一鍵端的資源。
linux下mysql配置文件my點吸煙 f最詳細(xì)解釋與目錄
my點吸煙 f的文件內(nèi)容說明:
#MySQL 服務(wù)端
[mysqld]
#一般配置選項
port = @MYSQL_TCP_PORT@
socket = @MYSQL_UNIX_ADDR@
#back_log 是操作系統(tǒng)在監(jiān)聽隊列中所能保持的連接數(shù),
#隊列保存了在MySQL連接管理器線程處理之前的連接.
#如果你有非常高的連接率并且出現(xiàn)”connection refused” 報錯,
#你就應(yīng)該增加此處的值.
#檢查你的操作系統(tǒng)文檔來獲取這個變量的最大值.
#如果將back_log設(shè)定到比你操作系統(tǒng)限制更高的值,將會沒有效果
back_log = 50
#不在TCP/IP端口上進(jìn)行監(jiān)聽.
#如果所有的進(jìn)程都是在同一臺服務(wù)器連接到本地的mysqld,
#這樣設(shè)置將是增強(qiáng)安全的方法
#所有mysqld的連接都是通過Unix sockets 或者命名管道進(jìn)行的.
#注意在windows下如果沒有打開命名管道選項而只是用此項
#(通過 “enable-named-pipe” 選項) 將會導(dǎo)致mysql服務(wù)沒有任何作用!
#skip-networking
#MySQL 服務(wù)所允許的同時會話數(shù)的上限
#其中一個連接將被SUPER權(quán)限保留作為管理員登錄.
#即便已經(jīng)達(dá)到了連接數(shù)的上限.
max_connections = 100
#每個客戶端連接最大的錯誤允許數(shù)量,如果達(dá)到了此限制.
#這個客戶端將會被MySQL服務(wù)阻止直到執(zhí)行了”FLUSH HOSTS” 或者服務(wù)重啟
#非法的密碼以及其他在鏈接時的錯誤會增加此值.
#查看 “Aborted_connects” 狀態(tài)來獲取全局計數(shù)器.
max_connect_errors = 10
#所有線程所打開表的數(shù)量.
#增加此值就增加了mysqld所需要的文件描述符的數(shù)量
#這樣你需要確認(rèn)在[mysqld_safe]中 “open-files-limit” 變量設(shè)置打開文件數(shù)量允許至少4096
table_cache = 2048
#允許外部文件級別的鎖. 打開文件鎖會對性能造成負(fù)面影響
#所以只有在你在同樣的文件上運(yùn)行多個數(shù)據(jù)庫實例時才使用此選項(注意仍會有其他約束!)
#或者你在文件層面上使用了其他一些軟件依賴來鎖定MyISAM表
#external-locking
#服務(wù)所能處理的請求包的最大大小以及服務(wù)所能處理的最大的請求大小(當(dāng)與大的BLOB字段一起工作時相當(dāng)必要)
#每個連接獨立的大小.大小動態(tài)增加
max_allowed_packet = 16M
#在一個事務(wù)中binlog為了記錄SQL狀態(tài)所持有的cache大小
#如果你經(jīng)常使用大的,多聲明的事務(wù),你可以增加此值來獲取更大的性能.
#所有從事務(wù)來的狀態(tài)都將被緩沖在binlog緩沖中然后在提交后一次性寫入到binlog中
#如果事務(wù)比此值大, 會使用磁盤上的臨時文件來替代.
#此緩沖在每個連接的事務(wù)第一次更新狀態(tài)時被創(chuàng)建
binlog_cache_size = 1M
#獨立的內(nèi)存表所允許的最大容量.
#此選項為了防止意外創(chuàng)建一個超大的內(nèi)存表導(dǎo)致永盡所有的內(nèi)存資源.
max_heap_table_size = 64M
#排序緩沖被用來處理類似ORDER BY以及GROUP BY隊列所引起的排序
#如果排序后的數(shù)據(jù)無法放入排序緩沖,
#一個用來替代的基于磁盤的合并分類會被使用
#查看 “Sort_merge_passes” 狀態(tài)變量.
#在排序發(fā)生時由每個線程分配
sort_buffer_size = 8M
#此緩沖被使用來優(yōu)化全聯(lián)合(full JOINs 不帶索引的聯(lián)合).
#類似的聯(lián)合在極大多數(shù)情況下有非常糟糕的性能表現(xiàn),
#但是將此值設(shè)大能夠減輕性能影響.
#通過 “Select_full_join” 狀態(tài)變量查看全聯(lián)合的數(shù)量
#當(dāng)全聯(lián)合發(fā)生時,在每個線程中分配
join_buffer_size = 8M
#我們在cache中保留多少線程用于重用
#當(dāng)一個客戶端斷開連接后,如果cache中的線程還少于thread_cache_size,
#則客戶端線程被放入cache中.
#這可以在你需要大量新連接的時候極大的減少線程創(chuàng)建的開銷
#(一般來說如果你有好的線程模型的話,這不會有明顯的性能提升.)
thread_cache_size = 8
#此允許應(yīng)用程序給予線程系統(tǒng)一個提示在同一時間給予渴望被運(yùn)行的線程的數(shù)量.
#此值只對于支持 thread_concurrency() 函數(shù)的系統(tǒng)有意義( 例如Sun Solaris).
#你可可以嘗試使用 [CPU數(shù)量]*(2…4) 來作為thread_concurrency的值
thread_concurrency = 8
#查詢緩沖常被用來緩沖 SELECT 的結(jié)果并且在下一次同樣查詢的時候不再執(zhí)行直接返回結(jié)果.
#打開查詢緩沖可以極大的提高服務(wù)器速度, 如果你有大量的相同的查詢并且很少修改表.
#查看 “Qcache_lowmem_prunes” 狀態(tài)變量來檢查是否當(dāng)前值對于你的負(fù)載來說是否足夠高.
#注意: 在你表經(jīng)常變化的情況下或者如果你的查詢原文每次都不同,
#查詢緩沖也許引起性能下降而不是性能提升.轉(zhuǎn)載請注明文章來源:
query_cache_size = 64M
#只有小于此設(shè)定值的結(jié)果才會被緩沖
#此設(shè)置用來保護(hù)查詢緩沖,防止一個極大的結(jié)果集將其他所有的查詢結(jié)果都覆蓋.
query_cache_limit = 2M
#被全文檢索索引的最小的字長.
#你也許希望減少它,如果你需要搜索更短字的時候.
#注意在你修改此值之后,
#你需要重建你的 FULLTEXT 索引
ft_min_word_len = 4
#如果你的系統(tǒng)支持 memlock() 函數(shù),你也許希望打開此選項用以讓運(yùn)行中的mysql在在內(nèi)存高度緊張的時候,數(shù)據(jù)在內(nèi)存中保持鎖定并且防止可能被swapping out
#此選項對于性能有益
#memlock
#當(dāng)創(chuàng)建新表時作為默認(rèn)使用的表類型,
#如果在創(chuàng)建表示沒有特別執(zhí)行表類型,將會使用此值
default_table_type = MYISAM
#線程使用的堆大小. 此容量的內(nèi)存在每次連接時被預(yù)留.
#MySQL 本身常不會需要超過64K的內(nèi)存
#如果你使用你自己的需要大量堆的UDF函數(shù)
#或者你的操作系統(tǒng)對于某些操作需要更多的堆,
#你也許需要將其設(shè)置的更高一點.
thread_stack = 192K
#設(shè)定默認(rèn)的事務(wù)隔離級別.可用的級別如下:
#READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE
transaction_isolation = REPEATABLE-READ
#內(nèi)部(內(nèi)存中)臨時表的最大大小
#如果一個表增長到比此值更大,將會自動轉(zhuǎn)換為基于磁盤的表.
#此限制是針對單個表的,而不是總和.
tmp_table_size = 64M
#打開二進(jìn)制日志功能.
#在復(fù)制(replication)配置中,作為MASTER主服務(wù)器必須打開此項
#如果你需要從你最后的備份中做基于時間點的恢復(fù),你也同樣需要二進(jìn)制日志.
log-bin=mysql-bin
#如果你在使用鏈?zhǔn)綇姆?wù)器結(jié)構(gòu)的復(fù)制模式 (A-B-C),
#你需要在服務(wù)器B上打開此項.
#此選項打開在從線程上重做過的更新的日志,
#并將其寫入從服務(wù)器的二進(jìn)制日志.
#log_slave_updates
#打開全查詢?nèi)罩? 所有的由服務(wù)器接收到的查詢 (甚至對于一個錯誤語法的查詢)
#都會被記錄下來. 這對于調(diào)試非常有用, 在生產(chǎn)環(huán)境中常常關(guān)閉此項.
#log
#將警告打印輸出到錯誤log文件. 如果你對于MySQL有任何問題
#你應(yīng)該打開警告log并且仔細(xì)審查錯誤日志,查出可能的原因.
#log_warnings
#記錄慢速查詢. 慢速查詢是指消耗了比 “l(fā)ong_query_time” 定義的更多時間的查詢.
#如果 log_long_format 被打開,那些沒有使用索引的查詢也會被記錄.
#如果你經(jīng)常增加新查詢到已有的系統(tǒng)內(nèi)的話. 一般來說這是一個好主意,
log_slow_queries
#所有的使用了比這個時間(以秒為單位)更多的查詢會被認(rèn)為是慢速查詢.
#不要在這里使用”1″, 否則會導(dǎo)致所有的查詢,甚至非??斓牟樵冺摫挥涗浵聛?由于MySQL 目前時間的精確度只能達(dá)到秒的級別).
long_query_time = 2
#在慢速日志中記錄更多的信息.
#一般此項最好打開.
#打開此項會記錄使得那些沒有使用索引的查詢也被作為到慢速查詢附加到慢速日志里
log_long_format
#此目錄被MySQL用來保存臨時文件.例如,
#它被用來處理基于磁盤的大型排序,和內(nèi)部排序一樣.
#以及簡單的臨時表.
#如果你不創(chuàng)建非常大的臨時文件,將其放置到 swapfs/tmpfs 文件系統(tǒng)上也許比較好
#另一種選擇是你也可以將其放置在獨立的磁盤上.
#你可以使用”;”來放置多個路徑
#他們會按照roud-robin方法被輪詢使用.
#tmpdir = /tmp
#復(fù)制有關(guān)的設(shè)置
#唯一的服務(wù)辨識號,數(shù)值位于 1 到 2^32-1之間.
#此值在master和slave上都需要設(shè)置.
#如果 “master-host” 沒有被設(shè)置,則默認(rèn)為1, 但是如果忽略此選項,MySQL不會作為master生效.
server-id = 1
#復(fù)制的Slave (去掉master段的注釋來使其生效)
#為了配置此主機(jī)作為復(fù)制的slave服務(wù)器,你可以選擇兩種方法:
#1) 使用 CHANGE MASTER TO 命令 (在我們的手冊中有完整描述) -
#語法如下:
#CHANGE MASTER TO MASTER_HOST=, MASTER_PORT= ,
#MASTER_USER=, MASTER_PASSWORD= ;
#你需要替換掉 , , 等被尖括號包圍的字段以及使用master的端口號替換 (默認(rèn)3306).
#例子:
#CHANGE MASTER TO MASTER_HOST=’125.564.12.1′, MASTER_PORT=3306,
#MASTER_USER=’joe’, MASTER_PASSWORD=’secret’;
#或者
#2) 設(shè)置以下的變量. 不論如何, 在你選擇這種方法的情況下, 然后第一次啟動復(fù)制(甚至不成功的情況下,
#例如如果你輸入錯密碼在master-password字段并且slave無法連接),
#slave會創(chuàng)建一個 master.info 文件,并且之后任何對于包含在此文件內(nèi)的參數(shù)的變化都會被忽略
#并且由 master.info 文件內(nèi)的內(nèi)容覆蓋, 除非你關(guān)閉slave服務(wù), 刪除 master.info 并且重啟slave 服務(wù).
#由于這個原因,你也許不想碰一下的配置(注釋掉的) 并且使用 CHANGE MASTER TO (查看上面) 來代替所需要的唯一id號位于 2 和 2^32 – 1之間
#(并且和master不同)
#如果master-host被設(shè)置了.則默認(rèn)值是2
#但是如果省略,則不會生效
#server-id = 2
#復(fù)制結(jié)構(gòu)中的master – 必須
#master-host =
#當(dāng)連接到master上時slave所用來認(rèn)證的用戶名 – 必須
#master-user =
#當(dāng)連接到master上時slave所用來認(rèn)證的密碼 – 必須
#master-password = #轉(zhuǎn)載請注明文章來源:
#master監(jiān)聽的端口.
#可選 – 默認(rèn)是3306
#master-port =
#使得slave只讀.只有用戶擁有SUPER權(quán)限和在上面的slave線程能夠修改數(shù)據(jù).
#你可以使用此項去保證沒有應(yīng)用程序會意外的修改slave而不是master上的數(shù)據(jù)
#read_only
MyISAM 相關(guān)選項
#關(guān)鍵詞緩沖的大小, 一般用來緩沖MyISAM表的索引塊.
#不要將其設(shè)置大于你可用內(nèi)存的30%,
#因為一部分內(nèi)存同樣被OS用來緩沖行數(shù)據(jù)
#甚至在你并不使用MyISAM 表的情況下, 你也需要仍舊設(shè)置起 8-64M 內(nèi)存由于它同樣會被內(nèi)部臨時磁盤表使用.
key_buffer_size = 32M
#用來做MyISAM表全表掃描的緩沖大小.
#當(dāng)全表掃描需要時,在對應(yīng)線程中分配.
read_buffer_size = 2M
#當(dāng)在排序之后,從一個已經(jīng)排序好的序列中讀取行時,行數(shù)據(jù)將從這個緩沖中讀取來防止磁盤尋道.
#如果你增高此值,可以提高很多ORDER BY的性能.
#當(dāng)需要時由每個線程分配
read_rnd_buffer_size = 16M
#MyISAM 使用特殊的類似樹的cache來使得突發(fā)插入
#(這些插入是,INSERT … SELECT, INSERT … VALUES (…), (…), …, 以及 LOAD DATA
#INFILE) 更快. 此變量限制每個進(jìn)程中緩沖樹的字節(jié)數(shù).
#設(shè)置為 0 會關(guān)閉此優(yōu)化.
#為了最優(yōu)化不要將此值設(shè)置大于 “key_buffer_size”.
#當(dāng)突發(fā)插入被檢測到時此緩沖將被分配.
bulk_insert_buffer_size = 64M
#此緩沖當(dāng)MySQL需要在 REPAIR, OPTIMIZE, ALTER 以及 LOAD DATA INFILE 到一個空表中引起重建索引時被分配.
#這在每個線程中被分配.所以在設(shè)置大值時需要小心.
myisam_sort_buffer_size = 128M
#MySQL重建索引時所允許的最大臨時文件的大小 (當(dāng) REPAIR, ALTER TABLE 或者 LOAD DATA INFILE).
#如果文件大小比此值更大,索引會通過鍵值緩沖創(chuàng)建(更慢)
myisam_max_sort_file_size = 10G
#如果被用來更快的索引創(chuàng)建索引所使用臨時文件大于制定的值,那就使用鍵值緩沖方法.
#這主要用來強(qiáng)制在大表中長字串鍵去使用慢速的鍵值緩沖方法來創(chuàng)建索引.
myisam_max_extra_sort_file_size = 10G
#如果一個表擁有超過一個索引, MyISAM 可以通過并行排序使用超過一個線程去修復(fù)他們.
#這對于擁有多個CPU以及大量內(nèi)存情況的用戶,是一個很好的選擇.
myisam_repair_threads = 1
#自動檢查和修復(fù)沒有適當(dāng)關(guān)閉的 MyISAM 表.
myisam_recover
#默認(rèn)關(guān)閉 Federated
skip-federated
#BDB 相關(guān)選項
#如果你運(yùn)行的MySQL服務(wù)有BDB支持但是你不準(zhǔn)備使用的時候使用此選項. 這會節(jié)省內(nèi)存并且可能加速一些事.
skip-bdb
INNODB 相關(guān)選項
#如果你的MySQL服務(wù)包含InnoDB支持但是并不打算使用的話,
#使用此選項會節(jié)省內(nèi)存以及磁盤空間,并且加速某些部分
#skip-innodb
#附加的內(nèi)存池被InnoDB用來保存 metadata 信息
#如果InnoDB為此目的需要更多的內(nèi)存,它會開始從OS這里申請內(nèi)存.
#由于這個操作在大多數(shù)現(xiàn)代操作系統(tǒng)上已經(jīng)足夠快, 你一般不需要修改此值.
#SHOW INNODB STATUS 命令會顯示當(dāng)先使用的數(shù)量.
innodb_additional_mem_pool_size = 16M
#InnoDB使用一個緩沖池來保存索引和原始數(shù)據(jù), 不像 MyISAM.
#這里你設(shè)置越大,你在存取表里面數(shù)據(jù)時所需要的磁盤I/O越少.
#在一個獨立使用的數(shù)據(jù)庫服務(wù)器上,你可以設(shè)置這個變量到服務(wù)器物理內(nèi)存大小的80%
#不要設(shè)置過大,否則,由于物理內(nèi)存的競爭可能導(dǎo)致操作系統(tǒng)的換頁顛簸.
#注意在32位系統(tǒng)上你每個進(jìn)程可能被限制在 2-3.5G 用戶層面內(nèi)存限制,
#所以不要設(shè)置的太高.
innodb_buffer_pool_size = 2G
#InnoDB 將數(shù)據(jù)保存在一個或者多個數(shù)據(jù)文件中成為表空間.
#如果你只有單個邏輯驅(qū)動保存你的數(shù)據(jù),一個單個的自增文件就足夠好了.
#其他情況下.每個設(shè)備一個文件一般都是個好的選擇.
#你也可以配置InnoDB來使用裸盤分區(qū) – 請參考手冊來獲取更多相關(guān)內(nèi)容
innodb_data_file_path = ibdata1:10M:autoextend
#設(shè)置此選項如果你希望InnoDB表空間文件被保存在其他分區(qū).
#默認(rèn)保存在MySQL的datadir中.
#innodb_data_home_dir =
#用來同步IO操作的IO線程的數(shù)量. This value is
#此值在Unix下被硬編碼為4,但是在Windows磁盤I/O可能在一個大數(shù)值下表現(xiàn)的更好.
innodb_file_io_threads = 4
#如果你發(fā)現(xiàn)InnoDB表空間損壞, 設(shè)置此值為一個非零值可能幫助你導(dǎo)出你的表.
#從1開始并且增加此值知道你能夠成功的導(dǎo)出表.
#innodb_force_recovery=1
#在InnoDb核心內(nèi)的允許線程數(shù)量.
#最優(yōu)值依賴于應(yīng)用程序,硬件以及操作系統(tǒng)的調(diào)度方式.
#過高的值可能導(dǎo)致線程的互斥顛簸.
innodb_thread_concurrency = 16
#如果設(shè)置為1 ,InnoDB會在每次提交后刷新(fsync)事務(wù)日志到磁盤上,
#這提供了完整的ACID行為.
#如果你愿意對事務(wù)安全折衷, 并且你正在運(yùn)行一個小的食物, 你可以設(shè)置此值到0或者2來減少由事務(wù)日志引起的磁盤I/O
#0代表日志只大約每秒寫入日志文件并且日志文件刷新到磁盤.
#2代表日志寫入日志文件在每次提交后,但是日志文件只有大約每秒才會刷新到磁盤上.
innodb_flush_log_at_trx_commit = 1
#加速InnoDB的關(guān)閉. 這會阻止InnoDB在關(guān)閉時做全清除以及插入緩沖合并.
#這可能極大增加關(guān)機(jī)時間, 但是取而代之的是InnoDB可能在下次啟動時做這些操作.
#innodb_fast_shutdown
#用來緩沖日志數(shù)據(jù)的緩沖區(qū)的大小.
#當(dāng)此值快滿時, InnoDB將必須刷新數(shù)據(jù)到磁盤上.
#由于基本上每秒都會刷新一次,所以沒有必要將此值設(shè)置的太大(甚至對于長事務(wù)而言)
innodb_log_buffer_size = 8M
#在日志組中每個日志文件的大小.
#你應(yīng)該設(shè)置日志文件總合大小到你緩沖池大小的25%~100%
#來避免在日志文件覆寫上不必要的緩沖池刷新行為.
#不論如何, 請注意一個大的日志文件大小會增加恢復(fù)進(jìn)程所需要的時間.
innodb_log_file_size = 256M
#在日志組中的文件總數(shù).
#通常來說2~3是比較好的.
innodb_log_files_in_group = 3
#InnoDB的日志文件所在位置. 默認(rèn)是MySQL的datadir.
#你可以將其指定到一個獨立的硬盤上或者一個RAID1卷上來提高其性能
#innodb_log_group_home_dir
#在InnoDB緩沖池中最大允許的臟頁面的比例.
#如果達(dá)到限額, InnoDB會開始刷新他們防止他們妨礙到干凈數(shù)據(jù)頁面.
#這是一個軟限制,不被保證絕對執(zhí)行.
innodb_max_dirty_pages_pct = 90
#InnoDB用來刷新日志的方法.
#表空間總是使用雙重寫入刷新方法
#默認(rèn)值是 “fdatasync”, 另一個是 “O_DSYNC”.
#innodb_flush_method=O_DSYNC
#在被回滾前,一個InnoDB的事務(wù)應(yīng)該等待一個鎖被批準(zhǔn)多久.
#InnoDB在其擁有的鎖表中自動檢測事務(wù)死鎖并且回滾事務(wù).
#如果你使用 LOCK TABLES 指令, 或者在同樣事務(wù)中使用除了InnoDB以外的其他事務(wù)安全的存儲引擎
#那么一個死鎖可能發(fā)生而InnoDB無法注意到.
#這種情況下這個timeout值對于解決這種問題就非常有幫助.
innodb_lock_wait_timeout = 120
[mysqldump]
#不要在將內(nèi)存中的整個結(jié)果寫入磁盤之前緩存. 在導(dǎo)出非常巨大的表時需要此項
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
#僅僅允許使用鍵值的 UPDATEs 和 DELETEs .
#safe-updates
[isamchk]
key_buffer = 512M
sort_buffer_size = 512M
read_buffer = 8M
write_buffer = 8M
[myisamchk]
key_buffer = 512M
sort_buffer_size = 512M
read_buffer = 8M
write_buffer = 8M
[mysqlhotcopy]
interactive-timeout
[mysqld_safe]
#增加每個進(jìn)程的可打開文件數(shù)量.
#警告: 確認(rèn)你已經(jīng)將全系統(tǒng)限制設(shè)定的足夠高!
#打開大量表需要將此值設(shè)b
open-files-limit = 8192
安裝啟動、相關(guān)目錄
示例:
安裝
rmp -ivh MySQL-server-4.1.22-0.glibc23.i386.rpm --nodeps
rmp -ivh MySQL-client-4.1.22-0.glibc23.i386.rpm --nodeps
查看是否安裝成功
netstat -atln 命令看到3306端口開放說明安裝成功
登錄
mysql [-u username] [-h host] [-p[password]] [dbname]
初始無密碼,這個mysql可執(zhí)行文件在/usr/bin/mysql
目錄
1、數(shù)據(jù)庫目錄
/var/lib/mysql/
2、配置文件
/usr/share/mysql(mysql.server命令及配置文件)
3、相關(guān)命令
/usr/bin(mysqladmin mysqldump等命令)
4、啟動腳本
/etc/rc.d/init.d/(啟動腳本文件mysql的目錄)
修改登錄密碼
MySQL默認(rèn)沒有密碼
usr/bin/mysqladmin -u root passwor ‘xxxx’
格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼
啟動與停止
MySQL安裝完成后啟動文件mysql在/etc/init.d目錄下,在需要啟動時運(yùn)行下面命令即可
啟動:
/etc/init.d/mysql start
停止:
/usr/bin/mysqladmin -u root -p shutdown
重新啟動:
sudo /etc/init.d/mysql restart
自動啟動:
察看mysql是否在自動啟動列表中 /sbin/chkconfig --list
把MySQL添加到你系統(tǒng)的啟動服務(wù)組里面去 /sbin/chkconfig --add mysql
把MySQL從啟動服務(wù)組里面刪除 /sbin/chkconfig --del mysql
配置
將/usr/share/mysql/my-medium點吸煙 f復(fù)制到/etc/my點吸煙 f,以后修改my點吸煙 f文件來修改mysql的全局設(shè)置
將my點吸煙 f文件中的innodb_flush_log_at_trx_commit設(shè)成0來優(yōu)化
[mysqld]后添加添加lower_case_table_names設(shè)成1來不區(qū)分表名的大小寫
設(shè)置字符集
MySQL的默認(rèn)編碼是Latin1,不支持中文,要支持需要把數(shù)據(jù)庫的默認(rèn)編碼修改為gbk或者utf8。
1、中止MySQL服務(wù)(bin/mysqladmin -u root shutdown)
2、在/etc/下找到my點吸煙 f,如果沒有就把MySQL的安裝目錄下的support-files目錄下的my-medium點吸煙 f復(fù)制到/etc/下并改名為my點吸煙 f即可
3、打開my點吸煙 f以后,在[client]和[mysqld]下面均加上default-character-set=utf8,保存并關(guān)閉
4、啟動MySQL服務(wù)(bin/mysqld_safe )
查詢字符集:show variables like ‘%set%’;
ls 指令是Linux下最常用的指令之一。
ls 命令將每個由 Directory 參數(shù)指定的目錄或者每個由 File 參數(shù)指定的名稱寫到標(biāo)準(zhǔn)輸出,以及您所要求的和標(biāo)志一起的其它信息。
如果不指定 File 或 Directory 參數(shù), ls 命令顯示當(dāng)前目錄的內(nèi)容。
基本介紹 中文名 :ls 類屬 :指令 所屬領(lǐng)域 :計算機(jī) 套用范圍 :linux 指令釋義,描述,許可權(quán)表示,標(biāo)志,注意事項, 指令釋義 ls 指令可以說是Linux下最常用的指令之一。它有許多的選項,下面列出了 ls 指令的絕大多數(shù)選項。 List information about the FILEs (the current directory by default).Sort entries alphabetically if none of -cftuvSUX nor --sort is specified. 用法:ls [選項]... [檔案]... 運(yùn)用舉例:
1.列出具體檔案 #ls -al 這個最常用,可是往往又不徹底符合要求,
2.列出一切子目錄的檔案:#ls -R 上個指令僅僅列出了本目錄下的一切目錄和檔案,可是目錄下的檔案不會循環(huán)的列出。
3.若是檔案過多一屏看不完,怎么辦?并且,關(guān)于想找到許多檔案中的某個檔案的姓名。
3.1分屏顯現(xiàn):#ls -l|more 能在當(dāng)時屏退出,很有用,但不能一頁一頁翻屏
#ls -l|less 能用pgup,pgdw 翻頁,但不能在當(dāng)時方位退出
3.2橫向輸出盡可能多的顯現(xiàn)檔案姓名: #ls -m
-a 列出目錄下的一切檔案,包含以 . 最初的隱含檔案。常用
-m 橫向輸出檔案名稱,并以“,”作分格符。
-c 輸出檔案的 i 節(jié)點的修正時刻,并以此排序。
-R 列出一切子目錄下的檔案。
-l 列出檔案的具體信息。
-s 在每個檔案名稱后輸出該檔案的巨細(xì)。
-k 以 k 位元組的方式表明檔案的巨細(xì)。
-i 輸出檔案的 i 節(jié)點的索引信息。
2.只顯現(xiàn)目錄:#ls -l |grep ^d 3.只顯現(xiàn)非目錄檔案:#ls -l |grep ^[^d]
3.對輸出檔案進(jìn)行各種排序;
3.1 依照字元序(default): #ls -l
3.2 依照修正時刻排序: #ls -t 近來修正在最上面
3.3 逆排序 : #ls -r
3.4 按檔案巨細(xì)排序 :#ls -S 大檔案的在上
3.5 依照檔案擴(kuò)展名(最終一個.后的字元)排序: #ls -X
3.6 按數(shù)字排序 :#ls -lv
-t 以時刻排序。
-r 對目錄反向排序
-f -U 對輸出的檔案不排序。
-X 以檔案的擴(kuò)展名(最終一個 . 后的字元)排序。
-S 以檔案巨細(xì)排序。
-u 以檔案前次被拜訪的時刻排序?!?/p>
-n 用數(shù)字的 UID,GID 替代稱號。
-o 顯現(xiàn)檔案的除組信息外的具體信息。
-p -F 在每個檔案名稱后附上一個字元以闡明該檔案的類型,“*”表明可執(zhí)行的一般
檔案;“/”表明目錄;“@”表明符號連線;“|”表明FIFOs;“=”表明套接字(sockets)。
-q 用?替代不行輸出的字元。
-x 按列輸出,橫向排序。
暫時無用選項:
-b 把檔案名稱中不可輸出的字元用反斜杠加字元編號(就象在C言語里相同)的方式列出。不常用
-d 將目錄象檔案相同顯現(xiàn),而不是顯現(xiàn)其下的檔案。
-e 輸出時刻的悉數(shù)信息,而不是輸出簡略信息。 沒用
-g 無用。
-A 顯現(xiàn)除 “.”和“..”外的一切檔案。
-B 不輸出以 “~”結(jié)束的備份檔案。
-C 按列輸出,縱向排序。
-G 輸出檔案的組的信息。
-L 列出連線檔案名稱而不是連線到的檔案。
-N 不約束檔案長度。
-Q 把輸出的檔案名稱用雙引號括起來。
-1 一行只輸出一個檔案。
--color=no 不顯現(xiàn)五顏六色檔案名稱
--help 在規(guī)范輸出上顯現(xiàn)協(xié)助信息。
--version 在規(guī)范輸出上輸出版別信息并退出 描述 ls 命令將每個由 Directory 參數(shù)指定的目錄或者每個由 File 參數(shù)指定的名稱寫到標(biāo)準(zhǔn)輸出,以及您所要求的和標(biāo)志一起的其它信息。如果不指定 File 或 Directory 參數(shù), ls 命令顯示當(dāng)前目錄的內(nèi)容。 在互斥對中指定多個選項不看成錯誤。每對中最后一個指定的選項確定輸出格式。 預(yù)設(shè)情況下,ls 命令按照檔案名稱的字母順序顯示所有信息。整理順序由環(huán)境變數(shù) LANG 或 LC_COLLATE 環(huán)境變數(shù)確定。在 AIX 5L Version 5.2 General Programming Concepts: Writing and Debugging Programs 中的 "National Language Support Overview for Programming" 包含更多細(xì)節(jié)。 當(dāng) ls 命令顯示目錄內(nèi)容時,它不顯示名稱以 .(點)開頭的檔案項,除非使用了 -a 或者 -A 標(biāo)志。如果命令由 root 用戶執(zhí)行,它預(yù)設(shè)使用 -A 標(biāo)志。 格式化輸出有三種主要方式: * 每行列出一項。 * 通過指定 -C 或 -x 標(biāo)志以多列列出各項。當(dāng)向 tty 輸出時,-C 標(biāo)志是預(yù)設(shè)格式。如果檔案或目錄名太長,ls 命令顯示單列輸出。 * 通過指定 -m 標(biāo)志可以以逗號分隔系列列出項。 要確定輸出行中字元位置的數(shù)目,ls 命令使用環(huán)境變數(shù) COLUMNS。如果沒有設(shè)定此變數(shù),命令獲取顯示的當(dāng)前列值。如果使用這些方法,ls 命令還不能確定字元位置的數(shù)量,它就使用預(yù)設(shè)值 80。 使用 -e 和 -l 標(biāo)志所顯示的方式解釋如下: 如果第一個字元是: d 此項為目錄。 b 此項為塊特殊檔案。 c 此項為字元特殊檔案。 l 此項為符號連結(jié),或者指定 -N 標(biāo)志,或者符號連結(jié)不指向現(xiàn)有檔案。 p 此項為一個先進(jìn)先出(FIFO)特殊檔案。 s 此項為本地套接字。 - 此項為普通檔案。 接下來的 9 個字元被分成 3 個集合,每個集合 3 個字元。第一組 3 字元集合顯示所有者許可權(quán)。下一組 3 字元集合顯示了組中其它用戶的許可權(quán)。最后 3 字元集合顯示了訪問此檔案的其它任何人的許可權(quán)。每個集合中的三個字元各自表示了檔案的讀、寫和執(zhí)行許可權(quán)。目錄的執(zhí)行許可權(quán)讓您可以搜尋目錄中的指定檔案。 許可權(quán)表示 如下: r 讀 w 寫(編輯) x 執(zhí)行(搜尋) - 沒有授予相應(yīng)的許可權(quán) 如果檔案有 set-group-ID 方式,那么組執(zhí)行許可權(quán)字元是 s。如果檔案有 set-user-ID 方式,則用戶執(zhí)行許可權(quán)字元是 s。如果方式位被設(shè)定為 01000(八進(jìn)制)(請參閱 chmod 命令以獲得此方式的含義),最后一個方式字元(通常 x 或者 -)是 T。如果沒有設(shè)定相應(yīng)的執(zhí)行許可權(quán),set-ID 的指示和方式位 01000 以大寫字母開頭(分別為 S 和 T)。方式 t 表示粘滯位是為檔案或目錄而設(shè)定的。 當(dāng)使用 -e 標(biāo)志時,其顯示方式與使用 -l 標(biāo)志一樣,除了多出了第 11 個字元,其解釋如下: + 表示檔案有擴(kuò)展安全性信息。例如,檔案可能在方式中有擴(kuò)展的 ACL、TCB 或者 TP 屬性。 通過使用 aclget 命令,可以顯示檔案的訪問控制信息(ACL)。通過使用 chtcb 命令,可以顯示 TCB 和 TP 屬性的值。 - 表示檔案沒有擴(kuò)展安全性信息。 當(dāng)列出目錄中檔案大小時,ls 命令顯示塊總數(shù),包括間接塊。 標(biāo)志 -A 列出所有條目,除了 .(點)和 ..(點-點)。 -a 列出目錄中所有項,包括以 .(點)開始的項。 -b 以八進(jìn)制 ( \nnn) 表示法顯示非列印字元。 -c 使用索引節(jié)點最近一次修改的時間,用以排序(當(dāng)帶 -t 標(biāo)志使用時)或者用以顯示(當(dāng)帶 -l 標(biāo)志使用時)。該標(biāo)志必須和 -t 或 -l 標(biāo)志或者兩者一起使用。 -C 以多列縱向排序輸出。當(dāng)往終端輸出時,此為預(yù)設(shè)方法。 -d 僅僅顯示指定目錄信息。目錄和檔案一樣處理,這在當(dāng)使用 -l 標(biāo)志獲取目錄狀態(tài)時非常有用。 -e 顯示方式(包括安全信息)、連結(jié)數(shù)目、所有者、組、大小(按位元組)、最近修改時間和每個檔案名稱稱。如果檔案是特殊檔案,大小欄位包含主要和次要設(shè)備數(shù)目。如果檔案是符號連結(jié),會列印所連結(jié)到的檔案的路徑名,其前有 -(減號,大于號)符號。顯示符號連結(jié)的屬性。 -E 列出檔案的保留空間、固定范圍大小和范圍分配標(biāo)志信息。使用該標(biāo)志時,必須指定 -l 標(biāo)志。 -f 在每個存儲槽中列出 Directory 參數(shù)指定的每個目錄的名稱。該標(biāo)志關(guān)閉 -l、-t、 -s 和 -r 標(biāo)志并且開啟 -a 標(biāo)志。列表的順序就是項出現(xiàn)在目錄中的順序。 -F 如果檔案是目錄,在檔案名稱后面放置一個 /(斜杠),如果檔案可執(zhí)行,則放置一個 *(星號),如果檔案為套接字,則放置一個 =(等號),如果為 FIFO,則放置一個 |(管道)符號,如果是符號連結(jié),則放置一個 @。 注:只有在使用 -N 標(biāo)志或者連結(jié)指向一個不存在的檔案時,符號連結(jié)顯示時才后跟 -。否則,顯示目標(biāo)檔案的有關(guān)信息。通過輸入 ls -f 命令,也可以調(diào)用此選項。 -g 與使用 -l 標(biāo)志時顯示同樣的信息,除了 -g 標(biāo)志禁止顯示所有者和符號連結(jié)信息。 -H 如果在命令行上指定了引用類型目錄檔案的符號連結(jié),ls 命令將檔案信息和檔案類型估計為由連結(jié)引用的檔案的信息和類型,而非連結(jié)本身;然而,ls 命令將寫連結(jié)本身的名稱,而非由連結(jié)引用的檔案。 -i 顯示每個檔案報告第一列中的索引節(jié)點數(shù)目。 -L 列出連結(jié)引用的檔案或目錄內(nèi)容。此為預(yù)設(shè)操作。后跟符號連結(jié)。如果使用 -l 選項,-N 選項就成為預(yù)設(shè)值,不后跟符號連結(jié)。當(dāng)使用 -l 選項時,僅有 -L 選項能夠覆蓋 -N 預(yù)設(shè)值。 -l (L 的小寫)顯示方式、連結(jié)數(shù)目、所有者、組、大?。ò次辉M)和每個檔案最近一次修改時間。如果檔案是特殊檔案,大小欄位包含主要和次要設(shè)備數(shù)目。如果最近一次修改時間大于六個月之前,時間欄位以 月份 日期 年份 的格式顯示,然而六個月內(nèi)修改的檔案以 月份 日期 時間 的格式顯示。 如果檔案是符號連結(jié),,列印所連結(jié)到的檔案的路徑名,其前跟 -。顯示符號連結(jié)的屬性。-n、-g、和 -o 標(biāo)志覆蓋 -l 標(biāo)志。 注意事項 1. 符號連結(jié)檔案后跟一個箭頭,然后是符號連結(jié)的內(nèi)容。 2. 當(dāng)使用 -l 選項時,通過執(zhí)行 mkpasswd 命令,可以提高 ls 命令的執(zhí)行性能。當(dāng)目錄包含不同用戶擁有的檔案時,這非常有用,比如 /tmp 目錄。 -m 使用流輸出格式(逗號分隔系列)。 -n -n 標(biāo)志除顯示用戶和組 ID 而不是用戶和組名稱以外,它顯示和 -l 標(biāo)志同樣的信息。 -N 當(dāng)確定檔案狀態(tài)時,不跟在符號連結(jié)之后。 注:如果使用 -L 和 -N 兩個標(biāo)志,最后一個標(biāo)志起作用。同樣的,任何時候給定一個包含以 /(斜杠)作為最后字元的符號連結(jié),不管使用何種選項,后面都會跟有連結(jié)。 -o -o 標(biāo)志除禁止顯示組和符號連結(jié)信息之外,它顯示和 -l 標(biāo)志同樣的信息。 -p 如果檔案是目錄,在每個檔案名稱后面放置一個斜杠。當(dāng)將 ls 命令的輸出通過管道傳遞到 pr 命令時,這很有用,如下所示: ls -p | pr -5 -t -w80 -q 將檔案名稱中的非列印字元顯示成 ?(問號)。 -r 反轉(zhuǎn)排序順序,適當(dāng)?shù)陌醋帜改嫦蚺判蚧蛘呤紫扰判蜃钆f的檔案。 -R 遞歸列出所有子目錄。 -s 按照千位元組(包括間接塊)給出每一項的大小。 -t 按照最近一次修改時間(最近的最先)而不是名稱排序。 -u 使用最近訪問時間,而不是最近修改時間用以排序(當(dāng)使用 -t 標(biāo)志)或者顯示(當(dāng)使用 -l 標(biāo)志)。如果不和 -t 或 -l 標(biāo)志或兩者一起使用,則該標(biāo)志無效。 -x 以多列格式橫向排序輸出。 -1 強(qiáng)制輸出為每行一項格式。當(dāng)輸出沒有定向到終端時,此為預(yù)設(shè)值。 退出狀態(tài) 此命令返回以下退出值: 0 寫所有檔案成功。 0 產(chǎn)生錯誤。 示例 1. 要列出當(dāng)前目錄中的所有檔案,請輸入: ls -a 列出所有檔案,包括 .(點)、..(點點)和其他以點開頭的檔案。 2. 要顯示詳細(xì)信息,請輸入: ls -l chap1 .profile 顯示一個長列表,包括關(guān)于 chap1 和 .profile 的詳細(xì)信息。 3. 要顯示有關(guān)目錄的詳細(xì)信息,請輸入: ls -d -l . manual manual/chap1 顯示目錄 . 和 manual 以及檔案 manual/chap1 的長列表。不使用 -d 標(biāo)志時,會列出 . 和 manual 目錄中的所有檔案,而不是關(guān)于目錄本身的詳細(xì)信息。 4. 要按照修改時間列出檔案,請輸入: ls -l -t 顯示最近被修改檔案的長列表,較舊的檔案跟在后面。 檔案 /usr/bin/ls 包含 ls 命令。 /etc/passwd 包含用戶 ID。 /etc/group 包含組 ID。 /usr/share/lib/terminfo/* 包含終端信息。
php是無法更新?coreseek ?的索引的,需要使用coreseek的語法,配合定時任務(wù)來自動更新索引。
這個寫起來很麻煩,我們的系統(tǒng)正好用了 coreseek ,說一下我的思路吧。
1、首先建立一個 ?search 表,這個表用來存你要進(jìn)行搜索的、經(jīng)過分詞的數(shù)據(jù),分詞系統(tǒng)你們自己選,我使用的是php的pscws4中文分詞。
DROP?TABLE?IF?EXISTS?`search`;
CREATE?TABLE?`search`?(
`searchid`?int(11)?NOT?NULL?AUTO_INCREMENT,
`title`?varchar(255)?NOT?NULL,
`content`?text?NOT?NULL,
`add_time`?int(11)?NOT?NULL,
PRIMARY?KEY?(`searchid`)
)?ENGINE=MyISAM?AUTO_INCREMENT=15209?DEFAULT?CHARSET=utf8;
2、還需要一個 索引計數(shù)表?search_counter,這個表用來存放每次索引更新后的最大一個ID,下次更新索引的時候,就不需要從頭更新了,只需要比這個ID大的就可以。
DROP?TABLE?IF?EXISTS?`search_counter`;
CREATE?TABLE?`search_counter`?(
`counter_id`?int(11)?NOT?NULL,
`max_doc_id`?int(11)?NOT?NULL,
PRIMARY?KEY?(`counter_id`)
)?ENGINE=InnoDB?DEFAULT?CHARSET=utf8;
3、配置?coreseek ,以下是我在windows下?coreseek的配置文件,linux 在服務(wù)器上,沒去找。這里配置了2個索引源,一個是main,一個是增量索引delta,這樣不需要每次重建所有索引,只需要合并?main和delta就可以了。
#源定義
source?main
{
type????????????????????=?mysql
sql_host????????????????=?192.168.0.10
sql_user????????????????=?root
sql_pass????????????????=?root
sql_db??????????????????=?database
sql_port????????????????=?3306
sql_query_pre???????????=?SET?NAMES?utf8
sql_query_pre???????????=?REPLACE?INTO?search_counter?SELECT?1,?MAX(searchid)?FROM?qhb_search
sql_query???????????????=?SELECT?searchid,?title,?content,?controller_id,?controller,add_time?FROM?search
#sql_query第一列id需為整數(shù)
#title、content作為字符串/文本字段,被全文索引
#sql_attr_uint???????????=?searchid???????????#從SQL讀取到的值必須為整數(shù)
sql_attr_uint???????????=?controller_id??????#?數(shù)據(jù)庫ID過濾
sql_attr_uint???????????=?controller?????????#?控制器過濾
sql_attr_timestamp??????=?add_time?#從SQL讀取到的值必須為整數(shù),作為時間屬性
sql_query_info_pre??????=?SET?NAMES?utf8????????????????????????????????????????#命令行查詢時,設(shè)置正確的字符集
#sql_query_info??????????=?SELECT?*?FROM?qhb_search?WHERE?searchid=$searchid?#命令行查詢時,從數(shù)據(jù)庫讀取原始數(shù)據(jù)信息
}
source?delta?:?main
{
sql_query_pre??=?SET?NAMES?utf8
sql_query??????=?SELECT?searchid,?title,?content,?controller_id,?controller,add_time?FROM?qhb_search?WHERE?searchid(?SELECT?max_doc_id?FROM?qhb_search_counter?WHERE?counter_id=1?)
sql_query_post?=?REPLACE?INTO?qhb_search_counter?SELECT?1,?MAX(searchid)?FROM?qhb_search
}
#index定義
index?main
{
source??????????=?main?????????????#對應(yīng)的source名稱
path????????????=?D:/WebSoft/coreseek/var/data/main?#請修改為實際使用的絕對路徑,例如:/usr/local/coreseek/var/...
docinfo?????????=?extern
mlock???????????=?0
morphology??????=?none
min_word_len????=?1
html_strip??????=?0
#中文分詞配置,詳情請查看:
#charset_dictpath?=?/usr/local/mmseg3/etc/?#BSD、Linux環(huán)境下設(shè)置,/符號結(jié)尾
charset_dictpath??=?D:/WebSoft/coreseek/etc/???????????#Windows環(huán)境下設(shè)置,/符號結(jié)尾,最好給出絕對路徑,例如:C:/usr/local/coreseek/etc/...
charset_type??????=?zh_cn.utf-8
}
index?delta?:?main
{
source?=?delta
path???=?D:/WebSoft/coreseek/var/data/delta
}
#全局index定義
indexer
{
mem_limit????????????=?128M
}
#searchd服務(wù)定義
searchd
{
listen??????????????=???9312
read_timeout????????=?5
max_children????????=?30
max_matches?????????=?1000
seamless_rotate?????=?0
preopen_indexes?????=?0
unlink_old??????????=?1
pid_file??=?D:/WebSoft/coreseek/var/log/searchd_main.pid??#請修改為實際使用的絕對路徑,例如:/usr/local/coreseek/var/...
log???????=?D:/WebSoft/coreseek/var/log/searchd_main.log????????#請修改為實際使用的絕對路徑,例如:/usr/local/coreseek/var/...
query_log?=?D:/WebSoft/coreseek/var/log/query_main.log?#請修改為實際使用的絕對路徑,例如:/usr/local/coreseek/var/...
}
4、建立索引。必須要先建立索引,?coreseek 才能啟動。下面是我在Windows的建立索引命令,如何使用命令行我就不贅述了。
D:\WebSoft\coreseek\bin\indexer?--all?--config?d:\WebSoft\coreseek\bin\sphinx.conf
5、配置并啟動服務(wù)
D:\WebSoft\coreseek\bin\searchd?--install?--config?
D:\WebSoft\coreseek\bin\sphinx.conf?--servicename?coreseek
6、Windows創(chuàng)建定時任務(wù),每分鐘更新一次索引
D:\WebSoft\coreseek\bin\indexer.exe?--config?D:\WebSoft\coreseek\bin\sphinx.conf?delta?--rotate
echo?indexing,?window?will?close?when?complete
7、Windows創(chuàng)建定時任務(wù),每天凌晨2點合并索引
D:\WebSoft\coreseek\bin\indexer.exe?--config?D:\WebSoft\coreseek\bin\sphinx.conf?--merge?main?delta?--rotate
echo?indexing,?window?will?close?when?complete
8、附上 創(chuàng)建索引,重建索引,合并索引在windows及l(fā)inux上的方法,以及一些使用上的小問題
windows:
建立索引
D:\WebSoft\coreseek\bin\indexer?--all?--config?d:\WebSoft\coreseek\bin\sphinx.conf
重建索引
D:\WebSoft\coreseek\bin\indexer?--config?D:\WebSoft\coreseek\bin\sphinx.conf?main?--rotate
增量索引
D:\WebSoft\coreseek\bin\indexer?--config?D:\WebSoft\coreseek\bin\sphinx.conf?delta?--rotate
合并索引
D:\WebSoft\coreseek\bin\indexer?--config?D:\WebSoft\coreseek\bin\sphinx.conf?--merge?main?delta?--rotate
配置并啟動服務(wù)
D:\WebSoft\coreseek\bin\searchd?--install?--config?D:\WebSoft\coreseek\bin\sphinx.conf?--servicename?coreseek
創(chuàng)建自定義詞庫方法:
1、先去??搜狗細(xì)胞詞庫下載需要的詞庫
2、使用?深藍(lán)詞庫轉(zhuǎn)換?將詞庫轉(zhuǎn)換為?txt
3、使用PHP程序?qū)?生成的txt轉(zhuǎn)換為?coreseek?所需要的格式
4、附加到??unigram.txt
5、使用命令更新分詞詞庫
cmd?進(jìn)入?bin目錄,執(zhí)行下面命令
mmseg?-u?D:\WebSoft\coreseek\etc\unigram.txt
6、將生成的??unigram.txt.uni?改名為:uni.lib
7、重建索引
8、重啟coreseek服務(wù)
注意:
必須先建立索引,服務(wù)才能啟動
1、coreseek索引或者查詢時提示ERROR:?invalid?token?in?etc解決辦法
該提示表示當(dāng)前的配置文件的編碼不是UTF-8(無BOM頭)格式,無法正確解析,請使用編輯軟件打開配置文件,另存為UTF-8(無BOM頭)格式;
2、failed?to??lock?.....try?--rotate??
索引已經(jīng)建立,使用重建索引命令
3、報警告:failed?to?scanf?pid?from?
沒有啟動coreseek服務(wù)
4、過濾搜索結(jié)果,必須使用數(shù)組傳遞,只支持???
無符號整數(shù)(1-32位寬);
UNIX?時間戳(timestamps);
浮點值(32位,IEEE?754單精度);
字符串序列?(尤其是計算出的整數(shù)值);
多值屬性?MVA(?multi-value?attributes?)?(32位無符號整型值的變長序列)
$this-shpinx-SetFilter('controller',?array(1,2)?);
CENTOS?操作方法
開機(jī)啟動coreseek搜索服務(wù):
vi?/etc/rc.d/rc.local??
在最后一行添加
/usr/local/coreseek/bin/searchd?-c?/usr/local/coreseek/bin/sphinx.conf
##如要停止搜索服務(wù),請使用/usr/local/coreseek/bin/searchd?-c?/usr/local/coreseek/bin/sphinx.conf?--stop
##如要已啟動服務(wù),要更新索引,請使用/usr/local/coreseek/bin/indexer?-c?/usr/local/coreseek/bin/sphinx.conf?--all?--rotate
linux下編輯定時任務(wù)?crontab?-e
#凌晨4點合并索引,其余時間每分鐘更新索引
*?0-3?*?*?*?/usr/local/sphinx/bin/indexer?--config?/usr/local/sphinx/etc/sphinx.conf?delta?--rotate
*?6-23?*?*?*?/usr/local/sphinx/bin/indexer?--config?/usr/local/sphinx/etc/sphinx.conf?delta?--rotate
0?4?*?*?*?/usr/local/sphinx/bin/indexer?--config?/usr/local/sphinx/etc/sphinx.conf?--merge?main?delta?--rotate
啟動服務(wù):
/usr/local/coreseek/bin/searchd?-c?/usr/local/coreseek/bin/sphinx.conf
建立索引
/usr/local/coreseek/bin/indexer?--all?--config?/usr/local/coreseek/bin/sphinx.conf
重建索引
/usr/local/coreseek/bin/indexer?--config?/usr/local/coreseek/bin/sphinx.conf?main?--rotate
增量索引
/usr/local/coreseek/bin/indexer?--config?/usr/local/coreseek/bin/sphinx.conf?delta?--rotate
合并索引
/usr/local/coreseek/bin/indexer?--config?/usr/local/coreseek/bin/sphinx.conf?--merge?main?delta?--rotate
使用OPTIMIZE TABLE語句可以。
OPTIMIZE TABLE語法
OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...
如果您已經(jīng)刪除了表的一大部分,或者如果您已經(jīng)對含有可變長度行的表(含有VARCHAR, BLOB或TEXT列的表)進(jìn)行了很多更改,則應(yīng)使用OPTIMIZE TABLE。被刪除的記錄被保持在鏈接清單中,后續(xù)的INSERT操作會重新使用舊的記錄位置。您可以使用OPTIMIZE TABLE來重新利用未使用的空間,并整理數(shù)據(jù)文件的碎片。
在多數(shù)的設(shè)置中,您根本不需要運(yùn)行OPTIMIZE TABLE。即使您對可變長度的行進(jìn)行了大量的更新,您也不需要經(jīng)常運(yùn)行,每周一次或每月一次即可,只對特定的表運(yùn)行。
OPTIMIZE TABLE只對MyISAM, BDB和InnoDB表起作用。
對于MyISAM表,OPTIMIZE TABLE按如下方式操作:
1. 如果表已經(jīng)刪除或分解了行,則修復(fù)表。
2. 如果未對索引頁進(jìn)行分類,則進(jìn)行分類。
3. 如果表的統(tǒng)計數(shù)據(jù)沒有更新(并且通過對索引進(jìn)行分類不能實現(xiàn)修復(fù)),則進(jìn)行更新。
對于BDB表,OPTIMIZE TABLE目前被映射到ANALYZE TABLE上。對于InnoDB表,OPTIMIZE TABLE被映射到ALTER TABLE上,這會重建表。重建操作能更新索引統(tǒng)計數(shù)據(jù)并釋放成簇索引中的未使用的空間。
要重新使用未使用的空間并減小文件的尺寸,則使用OPTIMIZE TABLE語句或myisamchk應(yīng)用程序重新編排表。OPTIMIZE TABLE更簡便,但是myisamchk速度更快。