![mysql_安裝與配置_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/16/7d885687-a428-4db8-a592-a66c27dfbc71/7d885687-a428-4db8-a592-a66c27dfbc711.gif)
![mysql_安裝與配置_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/16/7d885687-a428-4db8-a592-a66c27dfbc71/7d885687-a428-4db8-a592-a66c27dfbc712.gif)
![mysql_安裝與配置_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/16/7d885687-a428-4db8-a592-a66c27dfbc71/7d885687-a428-4db8-a592-a66c27dfbc713.gif)
![mysql_安裝與配置_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/16/7d885687-a428-4db8-a592-a66c27dfbc71/7d885687-a428-4db8-a592-a66c27dfbc714.gif)
![mysql_安裝與配置_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/16/7d885687-a428-4db8-a592-a66c27dfbc71/7d885687-a428-4db8-a592-a66c27dfbc715.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、Mysql數(shù)據(jù)庫使用基礎(chǔ)1. 安裝參數(shù)說明:./configure -prefix=/web/mysql 指定安裝目錄-without-debug 去除debug模式-with-extra-charsets=gb2312 添加gb2312中文字符支持-with -charsets=默認中文字符支持-enable-assembler 使用一些字符函數(shù)的匯編版本-without-isam 去掉isam表類型支持 現(xiàn)在很少用了 isam表是一種依賴平臺的表-without-innodb 去掉innodb表支持 innodb是一種支持事務(wù)處理的表,適合企業(yè)級應(yīng)用-with-pthread 強制使用pt
2、hread庫(posix線程庫)-enable-thread-safe-client 以線程方式編譯客戶端-with-client-ldflags=-all-static -with-mysqld-ldflags=-all-static 以純靜態(tài)方式編譯服務(wù)端和客戶端-with-tcp-port=3306 端口號-with-mysqld-user=work 用戶-with-unix-socket-path將MYSQL_UNIX_PORT環(huán)境變量設(shè)置為Unix套接字文件的路徑 ,localhost 的連接通常是通過UNIX 域的套接字文件進行的,在Unix中,如果你在同一臺機
3、器上運行服務(wù)器和客戶端,連接到localhost。連接到的localhost的Unix連接使用Unix套接字文件而不是TCP/IP2. f配置文件說明mysqldport = 3306serverid = 1 socket = /tmp/mysql.sockskip-locking# 避免MySQL的外部鎖定,減少出錯幾率增強穩(wěn)定性。skip-name-resolve禁止MySQL對外部連接進行DNS解析,使用這一選項可以消除MySQL進行DNS解析的時間。但需要注意,如果開啟該選項,則所有遠程主機連接授權(quán)都要使用IP地址方式,否則MySQL將無法正常處理連接請求! back_log = 38
4、4指定MySQL可能的連接數(shù)量。當(dāng)MySQL主線程在很短的時間內(nèi)接收到非常多的連接請求,該參數(shù)生效,主線程花費很短的時間檢查連接并且啟動一個新線程。 back_log參數(shù)的值指出在MySQL暫時停止響應(yīng)新請求之前的短時間內(nèi)多少個請求可以被存在堆棧中。 如果系統(tǒng)在一個短時間內(nèi)有很多連接,則需要增大該參數(shù)的值,該參數(shù)值指定到來的TCP/IP連接的偵聽隊列的大小。不同的操作系統(tǒng)在這個隊列大小上有它自 己的限制。 試圖設(shè)定back_log高于你的操作系統(tǒng)的限制將是無效的。默認值為50。對于Linux系統(tǒng)推薦設(shè)置為小于512的整數(shù)。 key_buffer_size = 256M# key_buffer_
5、size指定用于索引的緩沖區(qū)大小,增加它可得到更好的索引處理性能。對于內(nèi)存在4GB左右的服務(wù)器該參數(shù)可設(shè)置為256M或384M。注意:該參數(shù)值設(shè)置的過大反而會是服務(wù)器整體效率降低! max_allowed_packet = 4Mthread_stack = 256Ktable_cache = 128Ksort_buffer_size = 6M查詢排序時所能使用的緩沖區(qū)大小。注意:該參數(shù)對應(yīng)的分配內(nèi)存是每連接獨占!如果有100個連接,那么實際分配的總共排序緩沖區(qū)大小為100 × 6 600MB。所以,對于內(nèi)存在4GB左右的服務(wù)器推薦設(shè)置為6-8M。 read_buffer_size =
6、 4M讀查詢操作所能使用的緩沖區(qū)大小。和sort_buffer_size一樣,該參數(shù)對應(yīng)的分配內(nèi)存也是每連接獨享! join_buffer_size = 8M聯(lián)合查詢操作所能使用的緩沖區(qū)大小,和sort_buffer_size一樣,該參數(shù)對應(yīng)的分配內(nèi)存也是每連接獨享!myisam_sort_buffer_size = 64Mtable_cache = 512thread_cache_size = 64query_cache_size = 64M指定MySQL查詢緩沖區(qū)的大小??梢酝ㄟ^在MySQL控制臺執(zhí)行以下命令觀察: 代碼:# > SHOW VARIABLES LIKE '%q
7、uery_cache%'# > SHOW STATUS LIKE 'Qcache%'如果Qcache_lowmem_prunes的值非常大,則表明經(jīng)常出現(xiàn)緩沖不夠的情況;如果Qcache_hits的值非常大,則表明查詢緩沖使用非常頻繁,如果該值較小反而會影響效率,那么可以考慮不用查詢緩沖;Qcache_free_blocks,如果該值非常大,則表明緩沖區(qū)中碎片很多。 tmp_table_size = 256Mmax_connections = 768指定MySQL允許的最大連接進程數(shù)。如果在訪問論壇時經(jīng)常出現(xiàn)Too Many Connections的錯誤提 示,則
8、需要增大該參數(shù)值。 max_connect_errors = 10000000wait_timeout = 10指定一個請求的最大連接時間,對于4GB左右內(nèi)存的服務(wù)器可以設(shè)置為5-10。 thread_concurrency = 8該參數(shù)取值為服務(wù)器邏輯CPU數(shù)量×2,在本例中,服務(wù)器有2顆物理CPU,而每顆物理CPU又支持H.T超線程,所以實際取值為4 × 2 8 skip-networking開啟該選項可以徹底關(guān)閉MySQL的TCP/IP連接方式,如果WEB服務(wù)器是以遠程連接的方式訪問MySQL數(shù)據(jù)庫服務(wù)器則不要開啟該選項!否則將無法正常連接!3. phpMyAdmin
9、解壓phpMyAdmin-*.*.*.tar.gz到apache/htdocs中修改其下的config.inc.php文件中如下內(nèi)容$cfgServers1'host' = 'localhost'; (系統(tǒng)默認主機名為localhost不需要修改) $cfgServers1'user' = '數(shù)據(jù)庫管理員名';$cfgServers1'password' = '密碼';$cfgServers1'only_db
10、39; = '數(shù)據(jù)庫(數(shù)據(jù)庫管理員名_db)';4. innodb和mysiam的區(qū)別InnoDB和MyISAM是在使用MySQL最常用的兩個表類型,各有優(yōu)缺點,視具體應(yīng)用而定?;镜牟顒e為:MyISAM類型不支持事務(wù)處理等高級處理,而InnoDB類型支持。MyISAM類型的表強調(diào)的是性能,其執(zhí)行數(shù)度比InnoDB類型更快,但是不提供事務(wù)支持,而InnoDB提供事務(wù)支持已經(jīng)外部鍵等高級數(shù)據(jù)庫功能。MyIASM是IASM表的新版本,有如下擴展: 二進制層次的可移植性。 NULL列索引。 對變長行比ISAM表有更少的碎片。 支持大文件。 更好的索引壓縮。 更好的
11、鍵嗎統(tǒng)計分布。 更好和更快的auto_increment處理。 以下是一些細節(jié)和具體實現(xiàn)的差別:1.InnoDB不支持FULLTEXT類型的索引。2.InnoDB 中不保存表的具體行數(shù),也就是說,執(zhí)行select count(*) from table時,InnoDB要掃描一遍整個表來計算有多少行,但是MyISAM只要簡單的讀出保存好的行數(shù)即可。注意的是,當(dāng)count(*)語句包含 where條件時,兩種表的操作是一樣的。3.對于AUTO_INCREMENT類型的字段,InnoDB中必須包含只有該字段的索引,但是在MyISAM表中,可以和其他字段一起建立聯(lián)合索引。4.DELETE FROM t
12、able時,InnoDB不會重新建立表,而是一行一行的刪除。5.LOAD TABLE FROM MASTER操作對InnoDB是不起作用的,解決方法是首先把InnoDB表改成MyISAM表,導(dǎo)入數(shù)據(jù)后再改成InnoDB表,但是對于使用的額外的InnoDB特性(例如外鍵)的表不適用。另外,InnoDB表的行鎖也不是絕對的,如果在執(zhí)行一個SQL語句時MySQL不能確定要掃描的范圍,InnoDB表同樣會鎖全表,例如update table set num=1 where name like “%aaa%”任何一種表都不是萬能的,只用恰當(dāng)?shù)尼槍I(yè)務(wù)類型來選擇合適的表類型,才能最大的發(fā)揮MySQL的性能
13、優(yōu)勢。5. bin-log的作用使用mysqlbinlog命令查看binlog日志內(nèi)容,binlog日志為二進制文件,運行過程中會產(chǎn)生 binlog.000001 以及 binlog.index,前面的文件是 mysqld 記錄所有對數(shù)據(jù)的更新操作,后面的文件則是所有 binlog 的索引,都不能輕易刪除。6. 索引普通索引:沒有唯一性的限制 唯一性索引:索引列必須唯一主?。褐麈I是一種唯一性索引,但它必須指定為“PRIMARY KEY”。每個表只能有一個主鍵 全文索引:全文索引可以在VARCHAR或者TEXT類型的列上創(chuàng)建 索引的建立是需要磁盤空間的,并且當(dāng)數(shù)據(jù)增加、更改、刪除時,索引有可能會
14、重建,這樣會大幅度會降低數(shù)據(jù)維護效率7. 數(shù)據(jù)的導(dǎo)入導(dǎo)出BACK TABLE tbl_name TO '/tmp/db_name/'RESTORE TABLE FROM '/tmp/db_name/'不推薦使用,不拷貝索引文件,恢復(fù)慢SELECT INTO OUTFILE '/tmp/db_name/tbl_name.txt' FROM tbl_name;LOAD DATA INFILE '/tmp/db_name/tbl_name.txt' INTO TABLE tbl_name;恢復(fù)前確認表已經(jīng)存在Binlog恢復(fù):./mys
15、qlbinlog /tmp/binlog.000001 | mysql -uroot -p db_nameMysqldump常用方式-compatible=name 它告訴 mysqldump,導(dǎo)出的數(shù)據(jù)將和哪種數(shù)據(jù)庫或哪個舊版本的 MySQL 服務(wù)器相兼容。值可以為 ansi、mysql323、mysql40、postgresql、oracle、mssql、db2、maxdb、no_key_options、 no_tables_options、no_field_options 等,要使用幾個值,用逗號將它們隔開。當(dāng)然了,它并不保證能完全兼容,而是盡量兼容。 -complete-insert,
16、-c 導(dǎo)出的數(shù)據(jù)采用包含字段名的完整 INSERT 方式,也就是把所有的值都寫在一行。這么做能提高插入效率,但是可能會受到 max_allowed_packet 參數(shù)的影響而導(dǎo)致插入失敗。因此,需要謹慎使用該參數(shù)。 -default-character-set=charset 指定導(dǎo)出數(shù)據(jù)時采用何種字符集,如果數(shù)據(jù)表不是采用默認的 latin1 字符集的話,那么導(dǎo)出時必須指定該選項,否則再次導(dǎo)入數(shù)據(jù)后將產(chǎn)生亂碼問題。 -disable-keys 告訴 mysqldump 在 INSERT 語句的開頭和結(jié)尾增加 /*!40000 ALTER TABLE table DISABLE KEYS */
17、; 和 /*!40000 ALTER TABLE table ENABLE KEYS */; 語句,這能大大提高插入語句的速度,因為它是在插入完所有數(shù)據(jù)后才重建索引的。該選項只適合 MyISAM 表。 -extended-insert = true|false 默認情況下,mysqldump 開啟 -complete-insert 模式,因此不想用它的的話,就使用本選項,設(shè)定它的值為 false 即可。 -hex-blob 使用十六進制格式導(dǎo)出二進制字符串字段。如果有二進制數(shù)據(jù)就必須使用本選項。影響到的字段類型有 BINARY、VARBINARY、BLOB。 -lock-all-tables,
18、-x 在開始導(dǎo)出之前,提交請求鎖定所有數(shù)據(jù)庫中的所有表,以保證數(shù)據(jù)的一致性。這是一個全局讀鎖,并且自動關(guān)閉 -single-transaction 和 -lock-tables 選項。 -lock-tables 它和 -lock-all-tables 類似,不過是鎖定當(dāng)前導(dǎo)出的數(shù)據(jù)表,而不是一下子鎖定全部庫下的表。本選項只適用于 MyISAM 表,如果是 Innodb 表可以用 -single-transaction 選項。 -no-create-info,-t 只導(dǎo)出數(shù)據(jù),而不添加 CREATE TABLE 語句。 -no-data,-d 不導(dǎo)出任何數(shù)據(jù),只導(dǎo)出數(shù)據(jù)庫表結(jié)構(gòu)。 -opt 這只
19、是一個快捷選項,等同于同時添加 -add-drop-tables -add-locking -create-option -disable-keys -extended-insert -lock-tables -quick -set-charset 選項。本選項能讓 mysqldump 很快的導(dǎo)出數(shù)據(jù),并且導(dǎo)出的數(shù)據(jù)能很快導(dǎo)回。該選項默認開啟,但可以用 -skip-opt 禁用。注意,如果運行 mysqldump 沒有指定 -quick 或 -opt 選項,則會將整個結(jié)果集放在內(nèi)存中。如果導(dǎo)出大數(shù)據(jù)庫的話可能會出現(xiàn)問題。 -quick,-q 該選項在導(dǎo)出大表時很有用,它強制 mysqldump
20、 從服務(wù)器查詢?nèi)〉糜涗浿苯虞敵龆皇侨〉盟杏涗浐髮⑺鼈兙彺娴絻?nèi)存中。 -routines,-R 導(dǎo)出存儲過程以及自定義函數(shù)。 -single-transaction 該選項在導(dǎo)出數(shù)據(jù)之前提交一個 BEGIN SQL語句,BEGIN 不會阻塞任何應(yīng)用程序且能保證導(dǎo)出時數(shù)據(jù)庫的一致性狀態(tài)。它只適用于事務(wù)表,例如 InnoDB 和 BDB。本選項和 -lock-tables 選項是互斥的,因為 LOCK TABLES 會使任何掛起的事務(wù)隱含提交。要想導(dǎo)出大表的話,應(yīng)結(jié)合使用 -quick 選項。 -triggers 同時導(dǎo)出觸發(fā)器。該選項默認啟用,用 -skip-triggers 禁用它。 ./m
21、ysqldump -uroot -opt database db_name > db_name.sql./mysql uroot p db_name < db_name.sqlmysqlhotcopy它是備份數(shù)據(jù)庫或單個表的最快的途徑,但它只能運行在數(shù)據(jù)庫文件(包括數(shù)據(jù)表定義文件、數(shù)據(jù)文件、索引文件)所在的機器上。mysqlhotcopy 只能用于備份 MyISAM,并且只能運行在 類Unix 和 NetWare 系統(tǒng)上。8. mysql錯誤碼含義1005:創(chuàng)建表失敗1006:創(chuàng)建數(shù)據(jù)庫失敗1007:數(shù)據(jù)庫已存在,創(chuàng)建數(shù)據(jù)庫失敗1008:數(shù)據(jù)庫不存在,刪除數(shù)據(jù)庫失敗1009:不能刪
22、除數(shù)據(jù)庫文件導(dǎo)致刪除數(shù)據(jù)庫失敗1010:不能刪除數(shù)據(jù)目錄導(dǎo)致刪除數(shù)據(jù)庫失敗1011:刪除數(shù)據(jù)庫文件失敗1012:不能讀取系統(tǒng)表中的記錄1020:記錄已被其他用戶修改1021:硬盤剩余空間不足,請加大硬盤可用空間1022:關(guān)鍵字重復(fù),更改記錄失敗1023:關(guān)閉時發(fā)生錯誤1024:讀文件錯誤1025:更改名字時發(fā)生錯誤1026:寫文件錯誤1032:記錄不存在1036:數(shù)據(jù)表是只讀的,不能對它進行修改1037:系統(tǒng)內(nèi)存不足,請重啟數(shù)據(jù)庫或重啟服務(wù)器1038:用于排序的內(nèi)存不足,請增大排序緩沖區(qū)1040:已到達數(shù)據(jù)庫的最大連接數(shù),請加大數(shù)據(jù)庫可用連接數(shù)1041:系統(tǒng)內(nèi)存不足1042:無效的主機名104
23、3:無效連接1044:當(dāng)前用戶沒有訪問數(shù)據(jù)庫的權(quán)限1045:不能連接數(shù)據(jù)庫,用戶名或密碼錯誤1048:字段不能為空1049:數(shù)據(jù)庫不存在1050:數(shù)據(jù)表已存在1051:數(shù)據(jù)表不存在1054:字段不存在1065:無效的SQL語句,SQL語句為空1081:不能建立Socket連接1114:數(shù)據(jù)表已滿,不能容納任何記錄1116:打開的數(shù)據(jù)表太多1129:數(shù)據(jù)庫出現(xiàn)異常,請重啟數(shù)據(jù)庫1130:連接數(shù)據(jù)庫失敗,沒有連接數(shù)據(jù)庫的權(quán)限1133:數(shù)據(jù)庫用戶不存在1141:當(dāng)前用戶無權(quán)訪問數(shù)據(jù)庫1142:當(dāng)前用戶無權(quán)訪問數(shù)據(jù)表1143:當(dāng)前用戶無權(quán)訪問數(shù)據(jù)表中的字段1146:數(shù)據(jù)表不存在1147:未定義用戶對數(shù)
24、據(jù)表的訪問權(quán)限1149:SQL語句語法錯誤1158:網(wǎng)絡(luò)錯誤,出現(xiàn)讀錯誤,請檢查網(wǎng)絡(luò)連接狀況1159:網(wǎng)絡(luò)錯誤,讀超時,請檢查網(wǎng)絡(luò)連接狀況1160:網(wǎng)絡(luò)錯誤,出現(xiàn)寫錯誤,請檢查網(wǎng)絡(luò)連接狀況1161:網(wǎng)絡(luò)錯誤,寫超時,請檢查網(wǎng)絡(luò)連接狀況1062:字段值重復(fù),入庫失敗1169:字段值重復(fù),更新記錄失敗1177:打開數(shù)據(jù)表失敗1180:提交事務(wù)失敗1181:回滾事務(wù)失敗1203:當(dāng)前用戶和數(shù)據(jù)庫建立的連接已到達數(shù)據(jù)庫的最大連接數(shù),請增大可用的數(shù)據(jù)庫連接數(shù)或重啟數(shù)據(jù)庫1205:加鎖超時1211:當(dāng)前用戶沒有創(chuàng)建用戶的權(quán)限1216:外鍵約束檢查失敗,更新子表記錄失敗1217:外鍵約束檢查失敗,刪除或修改主表記錄失敗1226:當(dāng)前用戶使用的資源已超過所允許的資源,請重啟數(shù)據(jù)庫或重啟服務(wù)器1227:權(quán)限不足,您無權(quán)進行此操作1235:MySQL版本過低,不具有本功能9. mysql常見的一些有用的選項和命令mysqld -開啟日志支持-log -log-update-log-long-formartmysqlgrant all on database.* to user identified by &quo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司在職員工培訓(xùn)服務(wù)合同書
- 礦山企業(yè)安全生產(chǎn)許可證頒發(fā)與管理作業(yè)指導(dǎo)書
- 反擔(dān)保合同協(xié)議1
- 游戲美術(shù)設(shè)計制作實戰(zhàn)手冊作業(yè)指導(dǎo)書
- 針紡織品銷售購銷合同
- 小學(xué)二年級數(shù)學(xué)上冊口算
- 2025年紹興a2貨運從業(yè)資格證模擬考試題
- 2024-2025學(xué)年高中語文專題一小說家想說些什么第1課在酒樓上學(xué)案蘇教版選修短篇小說蚜
- 七年級班級工作總結(jié)
- 四年級第一學(xué)期德育工作計劃
- 普外腹腔鏡手術(shù)護理常規(guī)
- 2024年全國職業(yè)院校技能大賽(礦井災(zāi)害應(yīng)急救援賽項)考試題庫(含答案)
- 《預(yù)制高強混凝土風(fēng)電塔筒生產(chǎn)技術(shù)規(guī)程》文本附編制說明
- C語言程序設(shè)計 教案
- 2025新譯林版英語七年級下單詞表
- 海洋工程設(shè)備保溫保冷方案
- 主干光纜、支線光纜線路中斷應(yīng)急預(yù)案
- 跨學(xué)科主題學(xué)習(xí)的思考與策略
- 文藝演出排練指導(dǎo)服務(wù)合同
- 醫(yī)院消防安全培訓(xùn)課件(完美版)
- 行政法-9行政確認
評論
0/150
提交評論