?
一 MySQL簡介
1)MySQL
MySQL是MySQL AB公司的數據庫管理系統軟件,是最流行的開源(Open Source,開放源代碼)的關系型數據庫管理系統。
?
2) MySQL具有以下主要特點。
- 高速: 高速是MySQL的顯著特性,在MySQL中,使用了極快的“B樹”磁盤表(MyISAM)和索引壓縮;通過使用優化的“單掃描多連接”,能夠實現極快的連接;SQL函數使用高度優化的類庫實現,運行速度快。一直以來,高速都是MySQL吸引眾多用戶的特性之一,這一點可能只有親自使用才能體會。
- 支持多平臺: MySQL支持超過20種開發平臺,包括Linux、Windows、FreeBSD、IBM AIX、HP-UX、Mac OS、OpenBSD、Solaris等,這使得用戶可以選擇多種平臺實現自己的應用,并且在不同平臺上開發的應用系統可以很容易在各種平臺之間進行移植。
- 支持各種開發語言: MySQL為各種流行的程序設計語言提供支持,為它們提供了很多API函數,包括C、C++、Java、Perl、PHP等。
- 提供多種存儲器引擎: MySQL中提供了多種數據庫存儲引擎,各引擎各有所長,適用于不同的應用場合,用戶可以選擇最合適的引擎以得到最高性能。
- 功能強大: 強大的存儲引擎使MySQL能夠有效應用于任何數據庫應用系統,高效完成各種任務,無論是大量數據的高速傳輸系統,還是每天訪問量超過數億的高強度的搜索Web站點。MySQL 5是MySQL發展歷程中的一個里程碑,使MySQL具備了企業級數據庫管理系統的特性,提供強大的功能,例如子查詢、事務、外鍵、視圖、存儲過程、觸發器、查詢緩存等功能。
- 支持大型數據庫: InnoDB存儲引擎將InnoDB表保存在一個表空間內,該表空間可由數個文件創建。這樣,表的大小就能超過單獨文件的最大容量。表空間還可以包括原始磁盤分區,從而使構建很大的表成為可能,最大容量可以達到64TB。
- 安全: 靈活和安全的權限和密碼系統,允許基于主機的驗證。連接到服務器時,所有的密碼傳輸均采用加密形式,從而保證了密碼安全。
- 價格低廉:MySQL采用GPL許可,很多情況下,用戶可以免費使用MySQL;對于一些商業用途,需要購買MySQL商業許可,但價格相對低廉。
?
3)中文幫助 : http://dev.mysql.com/doc/refman/5.1/zh/index.html
?
二 MySQL下載安裝
1) 下載
下載: MySQL Community Server 5.1.50
地址: http://www.mysql.com/downloads/mysql/
?
2)安裝
?
三 MySQL配置
1) 在安裝目錄下(類似于C:\Program Files\MySQL\MySQL Server 5.1\bin)運行MySQLInstanceConfig.exe 。或者在開始菜單中執行MySQL->MySQL Server 5.1->MySQL Server Instance Config Wizard。
2) 選擇詳細配置
3)選擇所在的server類型
4)選擇數據庫引擎的類型
5)選擇數據庫的存儲位置
6)選擇大概的并行連接數
7)配置MySQL支持網絡訪問和其端口號
8)配置數據庫支持的字符集
9)選擇數據庫的運行方式(一般以service運行)
10)配置MySQL的root用戶的密碼
11)安裝完成,配置文件為my.ini。
12)my.ini配置文件如下
# ?----------------------------------------------------------------------
# ?Generated?by?the?MySQL?Server?Instance?Configuration?Wizard
#
#
# ?Installation?Instructions
# ?----------------------------------------------------------------------
#
# ?On?Linux?you?can?copy?this?file?to?/etc/my.cnf?to?set?global?options,
# ?mysql-data-dir/my.cnf?to?set?server-specific?options
# ?(@localstatedir@?for?this?installation)?or?to
# ?~/.my.cnf?to?set?user-specific?options.
#
# ?On?Windows?you?should?keep?this?file?in?the?installation?directory?
# ?of?your?server?(e.g.?C:\Program?Files\MySQL\MySQL?Server?X.Y).?To
# ?make?sure?the?server?reads?the?config?file?use?the?startup?option?
# ?"--defaults-file".?
#
# ?To?run?run?the?server?from?the?command?line,?execute?this?in?a?
# ?command?line?shell,?e.g.
# ?mysqld?--defaults-file="C:\Program?Files\MySQL\MySQL?Server?X.Y\my.ini"
#
# ?To?install?the?server?as?a?Windows?service?manually,?execute?this?in?a?
# ?command?line?shell,?e.g.
# ?mysqld?--install?MySQLXY?--defaults-file="C:\Program?Files\MySQL\MySQL?Server?X.Y\my.ini"
#
# ?And?then?execute?this?in?a?command?line?shell?to?start?the?server,?e.g.
# ?net?start?MySQLXY
#
#
# ?Guildlines?for?editing?this?file
# ?----------------------------------------------------------------------
#
# ?In?this?file,?you?can?use?all?long?options?that?the?program?supports.
# ?If?you?want?to?know?the?options?a?program?supports,?start?the?program
# ?with?the?"--help"?option.
#
# ?More?detailed?information?about?the?individual?options?can?also?be
# ?found?in?the?manual.
#
#
# ?CLIENT?SECTION
# ?----------------------------------------------------------------------
#
# ?The?following?options?will?be?read?by?MySQL?client?applications.
# ?Note?that?only?client?applications?shipped?by?MySQL?are?guaranteed
# ?to?read?this?section.?If?you?want?your?own?MySQL?client?program?to
# ?honor?these?values,?you?need?to?specify?it?as?an?option?during?the
# ?MySQL?client?library?initialization.
#
[client]
port = 3306
[mysql]
default - character - set = utf8
# ?SERVER?SECTION
# ?----------------------------------------------------------------------
#
# ?The?following?options?will?be?read?by?the?MySQL?Server.?Make?sure?that
# ?you?have?installed?the?server?correctly?(see?above)?so?it?reads?this?
# ?file.
#
[mysqld]
# ?The?TCP/IP?Port?the?MySQL?Server?will?listen?on
port = 3306
# Path?to?installation?directory.?All?paths?are?usually?resolved?relative?to?this.
basedir = " C:/Program?Files/MySQL/MySQL?Server?5.1/ "
# Path?to?the?database?root
datadir = " C:/Documents?and?Settings/All?Users/Application?Data/MySQL/MySQL?Server?5.1/Data/ "
# ?The?default?character?set?that?will?be?used?when?a?new?schema?or?table?is
# ?created?and?no?character?set?is?defined
default - character - set = utf8
# ?The?default?storage?engine?that?will?be?used?when?create?new?tables?when
default - storage - engine = INNODB
# ?Set?the?SQL?mode?to?strict
sql - mode = " STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION "
# ?The?maximum?amount?of?concurrent?sessions?the?MySQL?server?will
# ?allow.?One?of?these?connections?will?be?reserved?for?a?user?with
# ?SUPER?privileges?to?allow?the?administrator?to?login?even?if?the
# ?connection?limit?has?been?reached.
max_connections = 100
# ?Query?cache?is?used?to?cache?SELECT?results?and?later?return?them
# ?without?actual?executing?the?same?query?once?again.?Having?the?query
# ?cache?enabled?may?result?in?significant?speed?improvements,?if?your
# ?have?a?lot?of?identical?queries?and?rarely?changing?tables.?See?the
# ?"Qcache_lowmem_prunes"?status?variable?to?check?if?the?current?value
# ?is?high?enough?for?your?load.
# ?Note:?In?case?your?tables?change?very?often?or?if?your?queries?are
# ?textually?different?every?time,?the?query?cache?may?result?in?a
# ?slowdown?instead?of?a?performance?improvement.
query_cache_size = 0
# ?The?number?of?open?tables?for?all?threads.?Increasing?this?value
# ?increases?the?number?of?file?descriptors?that?mysqld?requires.
# ?Therefore?you?have?to?make?sure?to?set?the?amount?of?open?files
# ?allowed?to?at?least?4096?in?the?variable?"open-files-limit"?in
# ?section?[mysqld_safe]
table_cache = 256
# ?Maximum?size?for?internal?(in-memory)?temporary?tables.?If?a?table
# ?grows?larger?than?this?value,?it?is?automatically?converted?to?disk
# ?based?table?This?limitation?is?for?a?single?table.?There?can?be?many
# ?of?them.
tmp_table_size = 103M
# ?How?many?threads?we?should?keep?in?a?cache?for?reuse.?When?a?client
# ?disconnects,?the?client's?threads?are?put?in?the?cache?if?there?aren't
# ?more?than?thread_cache_size?threads?from?before.??This?greatly?reduces
# ?the?amount?of?thread?creations?needed?if?you?have?a?lot?of?new
# ?connections.?(Normally?this?doesn't?give?a?notable?performance
# ?improvement?if?you?have?a?good?thread?implementation.)
thread_cache_size = 8
# ***?MyISAM?Specific?options
# ?The?maximum?size?of?the?temporary?file?MySQL?is?allowed?to?use?while
# ?recreating?the?index?(during?REPAIR,?ALTER?TABLE?or?LOAD?DATA?INFILE.
# ?If?the?file-size?would?be?bigger?than?this,?the?index?will?be?created
# ?through?the?key?cache?(which?is?slower).
myisam_max_sort_file_size = 100G
# ?If?the?temporary?file?used?for?fast?index?creation?would?be?bigger
# ?than?using?the?key?cache?by?the?amount?specified?here,?then?prefer?the
# ?key?cache?method.??This?is?mainly?used?to?force?long?character?keys?in
# ?large?tables?to?use?the?slower?key?cache?method?to?create?the?index.
myisam_sort_buffer_size = 205M
# ?Size?of?the?Key?Buffer,?used?to?cache?index?blocks?for?MyISAM?tables.
# ?Do?not?set?it?larger?than?30%?of?your?available?memory,?as?some?memory
# ?is?also?required?by?the?OS?to?cache?rows.?Even?if?you're?not?using
# ?MyISAM?tables,?you?should?still?set?it?to?8-64M?as?it?will?also?be
# ?used?for?internal?temporary?disk?tables.
key_buffer_size = 175M
# ?Size?of?the?buffer?used?for?doing?full?table?scans?of?MyISAM?tables.
# ?Allocated?per?thread,?if?a?full?scan?is?needed.
read_buffer_size = 64K
read_rnd_buffer_size = 256K
# ?This?buffer?is?allocated?when?MySQL?needs?to?rebuild?the?index?in
# ?REPAIR,?OPTIMZE,?ALTER?table?statements?as?well?as?in?LOAD?DATA?INFILE
# ?into?an?empty?table.?It?is?allocated?per?thread?so?be?careful?with
# ?large?settings.
sort_buffer_size = 256K
# ***?INNODB?Specific?options?***
innodb_data_home_dir = " C:/MySQL?Datafiles/ "
# ?Use?this?option?if?you?have?a?MySQL?server?with?InnoDB?support?enabled
# ?but?you?do?not?plan?to?use?it.?This?will?save?memory?and?disk?space
# ?and?speed?up?some?things.
# skip-innodb
# ?Additional?memory?pool?that?is?used?by?InnoDB?to?store?metadata
# ?information.??If?InnoDB?requires?more?memory?for?this?purpose?it?will
# ?start?to?allocate?it?from?the?OS.??As?this?is?fast?enough?on?most
# ?recent?operating?systems,?you?normally?do?not?need?to?change?this
# ?value.?SHOW?INNODB?STATUS?will?display?the?current?amount?used.
innodb_additional_mem_pool_size = 7M
# ?If?set?to?1,?InnoDB?will?flush?(fsync)?the?transaction?logs?to?the
# ?disk?at?each?commit,?which?offers?full?ACID?behavior.?If?you?are
# ?willing?to?compromise?this?safety,?and?you?are?running?small
# ?transactions,?you?may?set?this?to?0?or?2?to?reduce?disk?I/O?to?the
# ?logs.?Value?0?means?that?the?log?is?only?written?to?the?log?file?and
# ?the?log?file?flushed?to?disk?approximately?once?per?second.?Value?2
# ?means?the?log?is?written?to?the?log?file?at?each?commit,?but?the?log
# ?file?is?only?flushed?to?disk?approximately?once?per?second.
innodb_flush_log_at_trx_commit = 1
# ?The?size?of?the?buffer?InnoDB?uses?for?buffering?log?data.?As?soon?as
# ?it?is?full,?InnoDB?will?have?to?flush?it?to?disk.?As?it?is?flushed
# ?once?per?second?anyway,?it?does?not?make?sense?to?have?it?very?large
# ?(even?with?long?transactions).
innodb_log_buffer_size = 3499K
# ?InnoDB,?unlike?MyISAM,?uses?a?buffer?pool?to?cache?both?indexes?and
# ?row?data.?The?bigger?you?set?this?the?less?disk?I/O?is?needed?to
# ?access?data?in?tables.?On?a?dedicated?database?server?you?may?set?this
# ?parameter?up?to?80%?of?the?machine?physical?memory?size.?Do?not?set?it
# ?too?large,?though,?because?competition?of?the?physical?memory?may
# ?cause?paging?in?the?operating?system.??Note?that?on?32bit?systems?you
# ?might?be?limited?to?2-3.5G?of?user?level?memory?per?process,?so?do?not
# ?set?it?too?high.
innodb_buffer_pool_size = 339M
# ?Size?of?each?log?file?in?a?log?group.?You?should?set?the?combined?size
# ?of?log?files?to?about?25%-100%?of?your?buffer?pool?size?to?avoid
# ?unneeded?buffer?pool?flush?activity?on?log?file?overwrite.?However,
# ?note?that?a?larger?logfile?size?will?increase?the?time?needed?for?the
# ?recovery?process.
innodb_log_file_size = 170M
# ?Number?of?threads?allowed?inside?the?InnoDB?kernel.?The?optimal?value
# ?depends?highly?on?the?application,?hardware?as?well?as?the?OS
# ?scheduler?properties.?A?too?high?value?may?lead?to?thread?thrashing.
innodb_thread_concurrency = 8
?
四 運行
當MySQL安裝和配置完成后,MySQL server已經以Service的方式運行了。運行mysqlshow查看默認的database如下:
?
完!
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
