mysql环境变量设置(windows环境)
1、对于命令控来说,在cmd命令下行下操作很方便,但有时需要直接在命令行床空执行mysql这样的命令,会出现”mysql不是内部或外部命令“这样的错误提示,原因是mysql其实是一个exe文件,存放于myql安装路径/bin下,因此需要将mysql的安装路径配置到path环境变量中,如此以后就不用每次都cd到mysql路径下了;
2、设置完成后我们再试试看-cmd-->mysql
已经连接上mysql了,接下来我们可以使用dml、sql语言来创建我们自己的数据库了;
3、首先,要创建一个数据库名字为test_user;
创建成功!
4、创建一个张数据表,使用脚本即可。
注意,创建table之前一定要use databasename;
? current value: 131072 sort? ????? current value: 64
thread_concurrency??current value: 10
tmp_table_size????current value: 1048576
thread_stack?????? : 28800
如果有一個mysqld伺服器正在運行,透過執行這個指令,你可以看到它實際上使用的變數的值:
shell> mysqladmin variables
每個選項在下面描述。對於緩衝區大小、長度和堆疊大小的值以位元組給出,你可以用於個後綴「K」或「M」 指出以K位元組或兆位元組顯示值。例如,16M指出16兆位元組。後綴字母的大小寫沒有關係;16M和16m是相同的。
你也可以用指令SHOW STATUS自一個運作的伺服器看見一些統計。請參閱7.21 SHOW語法(取得表格、欄位的資訊)。
back_log
要求MySQL能有的連線數量。當主要MySQL線程在一個很短時間內得到非常多的連接請求,這就起作用,然後主線程花些時間(儘管很短)檢查連接並且啟動一個新線程。 back_log值指出在MySQL暫時停止回答新請求之前的短時間內多少個請求可以被存在堆疊中。只有如果期望在一個短時間內有很多連接,你需要增加它,換句話說,這值對到來的TCP/IP連接的偵聽隊列的大小。你的作業系統在這個佇列大小上有它自己的限制。 Unix listen(2)系統呼叫的手冊頁應該有更多的細節。檢查你的OS文檔找出這個變數的最大值。試圖設定back_log高於你的作業系統的限制將是無效的。
connect_timeout
mysqld伺服器在用Bad handshake(糟糕的握手)應答前正在等待一個連接訊息的秒數。
delayed_insert_timeout
一個Insert DELAYED執行緒應該在終止前等待Insert語句的時間。
delayed_insert_limit
插入delayed_insert_limit行後,Insert DELAYED處理器將檢查是否有任何Select語句未執行。如果這樣,在繼續前執行允許這些語句。
delayed_queue_size
應該為處理Insert DELAYED分配多大一個隊列(以行數)。如果排隊滿了,任何進行Insert DELAYED的顧客將等待直到隊列又有空間了。
flush_time
如果這被設定為非零值,那麼每flush_time秒所有表將會關閉(以釋放資源和sync到磁碟)。
interactive_timeout
伺服器在關上它前在一個互動連線上等待行動的秒數。一個互動的客戶被定義為對mysql_real_connect()使用CLIENT_INTERACTIVE選項的客戶。也可見wait_timeout。
join_buffer_size
用於全部聯結(join)的緩衝區大小(不是用索引的聯結)。緩衝區對2個表間的每個全部聯結分配一次緩衝區,當增加索引不可能時,增加該值可得到一個更快的全部聯結。 (通常得到快速聯結的最佳方法是增加索引。)
key_buffer_size
索引區塊是緩衝的並且被所有的執行緒共用。 key_buffer_size是用來索引區塊的緩衝區大小,增加它可得到更好處理的索引(對所有讀和多重寫),到你能負擔得起那樣多。如果你使它太大,系統將開始換頁並且真的變慢了。記住既然MySQL不快取讀取的數據,你將必須為OS檔案系統快取留下一些空間。為了在寫入多個行時得到更多的速度,請使用LOCK TABLES。見7.24LOCK TABLES/UNLOCK TABLES語法。
long_query_time
如果一個查詢所用時間超過它(以秒計),Slow_queries記數器將會增加。
max_allowed_packet
一個包包的最大尺寸。訊息緩衝區被初始化為net_buffer_length字節,但是可在需要時增加到max_allowed_packet個位元組。缺省地,該值太小必能捕捉到大的(可能錯誤)包。如果你正在使用大的BLOB列,你必須增加該值。它應該像你想要使用的最大BLOB的那麼大。
max_connections
允許的同時顧客的數量。增加該值增加mysqld要求的文件描述符的數量。請參閱下面對文件描述符限制的註釋。見18.2.4 Too many connections錯誤。
max_connect_errors
如果有多於該數量的從一台主機中斷的連接,這台主機阻止進一步的連接。你可用FLUSH HOSTS指令疏通一台主機。
max_delayed_threads
不要啟動多於這個數字的執行緒來處理Insert DELAYED的語句。如果你試圖在所有Insert DELAYED線程在用後向一張新表插入數據,行將被插入,就像DELAYED屬性沒被指定那樣。
max_join_size
可能將要讀入多於max_join_size個記錄的聯結將會回傳一個錯誤。如果你的用戶想要執行沒有一個Where子句、花很長時間並且返回百萬行的聯結,設定它。
max_sort_length
在排序BLOB或TEXT值時使用的位元組數(每個值僅頭max_sort_length個位元組被使用;其餘的被忽略)。
max_tmp_tables
(目前該選擇還不做任何事)。一個客戶能同時保持打開的臨時表的最大數量。
net_buffer_length
通訊緩衝區在查詢之間被重置到該大小。通常這不應該被改變,但是如果你有很少的內存,你能將它設定為查詢期望的大小。 (即,客戶所發出的SQL語句所期望的長度。如果語句超過這個長度,緩衝區會自動地被擴大,直到max_allowed_packet個位元組。)
record_buffer
每個進行一個順序掃描的執行緒為其掃描的每張表分配這個大小的一個緩衝區。如果你做很多順序掃描,你可能想要增加該值。
sort_buffer
每個需要進行排序的執行緒分配該大小的一個緩衝區。增加這值加速ORDER BY或GROUP BY操作。見18.5 MySQL在哪裡儲存臨時檔案。
table_cache
為所有執行緒開啟表格的數量。增加該值能增加mysqld要求的檔案描述符的數量。 MySQL對每個唯一開啟的表需要2個檔案描述符,請參閱下面對檔案描述符限制的註解。對於表格快取如何運作的信息,請參閱10.2.4 MySQL怎麼開啟和關閉表。
tmp_table_size
如果臨時表超出該大小,MySQL產生一個The table tbl_name is full形式的錯誤,如果你做很多進階GROUP BY查詢,增加tmp_table_size值。
thread_stack
每個執行緒的堆疊大小。由crash-me測試檢測到的許多限制依賴於該值。缺省隊一般的操作是夠大了。見10.8 使用你自己的基準。
wait_timeout
伺服器在關閉它之前在一個連線上等待行動的秒數。也可見interactive_timeout。
MySQL使用是很具伸縮性的演算法,因此你通常能用很少的記憶體運作或給MySQL更多的被存以獲得更好的效能。
如果你有很多內存和很多表並且有一個中等數量的客戶,想要最大的性能,你應該一些象這樣的東西:
shell> safe_mysqld -O key_buffer=16M -O table_cache=128
?????-O sort_buffer=4M -O record_buffer=1M &
如果你有較少的內存和大量的連接,使用這樣一些東西:
shell> safe_mysql -O5key_buffer O sort_buffer=100k
?????-O record_buffer=100k &
或甚至:
shell> safe_my table_cache=32 -O record_buffer=8k -O net_buffer=1K &
如果有許多連接,「交換問題」可能發生,除非mysqld已經被設定每個連接使用很少的記憶體。當然如果你對所有連接有足夠的內存,mysqld執行得更好。
注意,如果你改變mysqld的一個選項,它實際上只對伺服器的那個例子保持。
為了明白一個參數變化的效果,這樣做:
shell> mysqld -O key_buffer=32m --help
保證--help選項是最後一個;否則,命令列上在它之後列出的任何選項的效果將不在反映在輸出中。
以上就介紹了java 環境變數 MYSQL環境變數設定方法,包括了java 環境變數方面的內容,希望對PHP教學有興趣的朋友有幫助。