主頁 > 知識庫 > MySQL5.6.17數(shù)據(jù)庫安裝 如何配置My.ini文件

MySQL5.6.17數(shù)據(jù)庫安裝 如何配置My.ini文件

熱門標簽:西安400電話在哪里辦理 銀川電銷外呼系統(tǒng)定制 中科嘉智人工智能電銷機器人 做地圖標注都需要什么工具 哈爾濱crm外呼系統(tǒng)價格 甘孜電話機器人廠家 上海智能外呼系統(tǒng)需要多少錢 電銷機器人好品牌門薩維l 凱立德科技館地圖標注

最近在做項目開發(fā)時用到了MySql數(shù)據(jù)庫,在看了一些有關MySql的文章后,很快就上手使用了。在使用的過程中還是出現(xiàn)了一些問題,因為使用的是綠色免安裝版的MySql所以在配置的時候出現(xiàn)了一些問題,該篇文章就主要針對MySql綠色版的配置及其使用進行討論。

一、MySql概述

  MySql數(shù)據(jù)庫是有瑞典MySql AB公司開發(fā),現(xiàn)在該公司被Oracle收購屬于Oracle所有。同SQL Server類似,它也是基于關系型數(shù)據(jù)庫的數(shù)據(jù)庫管理系統(tǒng),在Web應用方面MySQL是最好的RDBMS之一,因為它屬于輕量級的RDBMS。

  現(xiàn)在MySql的最新版本是5.6.17,最新下載地址:http://dev.mysql.com/downloads/mysql/,下載完成了接下來進行安裝部署了,有關安裝部署的內(nèi)容在網(wǎng)上查看下教程就可以。

二、MySql配置

  既然MySql采用的是SQL為基礎,那么他就包含基本的DML、DDL、DAL,這些基本的數(shù)據(jù)庫語言是很容易上手使用的,另外MySql還封裝了很多數(shù)據(jù)庫操作命令,這些命令是在dos系統(tǒng)中運行的,這是他和SQL Server的不同之處,MySql的環(huán)境是簡歷在dos系統(tǒng)之上的,要使用dos命令。它和java有點類似,可以說它也是建立在虛擬機之上的,可以實現(xiàn)一次建立到處使用。想要方便的使用MySql命令還需要一些前提進行設置,設置方法類似于Java的環(huán)境變量,下面的方法以免安裝版本的MySql為例演示它的配置方法。

  1. MySql環(huán)境配置

  將MySql的解壓路徑配置到系統(tǒng)變量中就可以在任何地方使用MySql命令。

  Note:這是配置的系統(tǒng)變量,任何使用控制臺命令的第三方命令都可以添加到系統(tǒng)變量中,系統(tǒng)變量是一個紐帶作用,在使用命令時會優(yōu)先搜索系統(tǒng)變量。

  2、MySql服務器配置

  在配置了系統(tǒng)的環(huán)境變量后就可以使用MySql的bin下提供的所有服務了,接下來還需要在系統(tǒng)中安裝MySQL。

  2.1 安裝MySql服務器

  打開解壓文件目錄,找到后綴名為.ini的文件,復制一份更名為my.ini,使用下面的內(nèi)容替換原有的內(nèi)容。

[mysqld]
basedir=D:/Program Files (x86)/MySql # 設置mysql的安裝目錄
datadir=D:/Program Files (x86)/MySql/data # 設置mysql數(shù)據(jù)庫的數(shù)據(jù)的存放目錄,必須是data,或者是//xxx/data
*************************分割線*******************
port = 3306
socket = /tmp/mysql.sock
default-character-set=gbk # 設置mysql服務器的字符集
skip-locking
key_buffer = 16K
max_allowed_packet = 1M
table_cache = 4
sort_buffer_size = 64K
read_buffer_size = 256K
read_rnd_buffer_size = 256K
net_buffer_length = 2K
thread_stack = 64K
[client]
#password = your_password
port = 3306
socket = /tmp/mysql.sock
default-character-set=gbk
*************************分割線*******************

  Note:[mysqld]下面的basedir和datadir需要設置為文件解壓后的路徑,在此處筆者將文件放到了D:\Program Files (x86)\MySql下。另外上面的分割線內(nèi)的內(nèi)容是可選的,可以在建立數(shù)據(jù)庫的時候重新設置,建議在創(chuàng)建時不要添加,因為會有很多不確定因素。

  在my.ini 文件中 本人配置的如一下可運行選項:

  # For advice on how to change settings please see

  # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html

  # *** DO NOT EDIT THIS FILE. It's a template which will be copied to the

  # *** default location during install, and will be replaced if you

  # *** upgrade to a newer version of MySQL.

  [client]

  #password = your_password

  port = 3306

  socket = /tmp/mysql.sock

  default-character-set=utf-8

  [mysqld]

  port = 3306

  basedir="C:/Program Files/Mysql"

  # 設置mysql的安裝目錄

  datadir="C:/Program Files/Mysql/data"

  # 設置mysql數(shù)據(jù)庫的數(shù)據(jù)的存放目錄,必須是data,或者是//xxx/data

  default-storage-engine=INNODB

  # 創(chuàng)建新表時將使用的默認存儲引擎

  socket = /tmp/mysql.sock

  sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

  # SQL模式為strict模式

  #default-character-set=utf-8

  # 設置mysql服務器的字符集

  #character-set-server=utf-8

  # 服務端使用的字符集默認為8比特編碼的latin1字符集

  max_connections=100

  # mysql服務器支持的最大并發(fā)連接數(shù)(用戶數(shù))。但總會預留其中的一個連接給管理員使用超級權限登錄,即使連接數(shù)目達到最大限制。如果設置得過小而用戶比較多,會經(jīng)常出現(xiàn)“Too many connections”錯誤。

  query_cache_size=0

  # 查詢緩存大小,用于緩存SELECT查詢結果。如果有許多返回相同查詢結果的SELECT查詢,并且很少改變表,可以設置query_cache_size大于0,可以極大改善查詢效率。而如果表數(shù)據(jù)頻繁變化,就不要使用這個,會適得其反

  #table_cache=256

  # 這個參數(shù)在5.1.3之后的版本中叫做table_open_cache,用于設置table高速緩存的數(shù)量。由于每個客戶端連接都會至少訪問一個表,因此此參數(shù)的值與 max_connections有關。當某一連接訪問一個表時,MySQL會檢查當前已緩存表的數(shù)量。如果該表已經(jīng)在緩存中打開,則會直接訪問緩存中的表已加快查詢速度;如果該表未被緩存,則會將當前的表添加進緩存并進行查詢。在執(zhí)行緩存操作之前,table_cache用于限制緩存表的最大數(shù)目:如果當前已經(jīng)緩存的表未達到table_cache,則會將新表添加進來;若已經(jīng)達到此值,MySQL將根據(jù)緩存表的最后查詢時間、查詢率等規(guī)則釋放之前的緩存。

  tmp_table_size=34M

  # 內(nèi)存中的每個臨時表允許的最大大小。如果臨時表大小超過該值,臨時表將自動轉為基于磁盤的表(Disk Based Table)。

  thread_cache_size=8

  # 緩存的最大線程數(shù)。當客戶端連接斷開時,如果客戶端總連接數(shù)小于該值,則處理客戶端任務的線程放回緩存。在高并發(fā)情況下,如果該值設置得太小,就會有很多線程頻繁創(chuàng)建,線程創(chuàng)建的開銷會變大,查詢效率也會下降。一般來說如果在應用端有良好的多線程處理,這個參數(shù)對性能不會有太大的提高。

  #------------------------------MyISAM相關參數(shù) begin------------------------------------------------

  myisam_max_sort_file_size=100G

  # mysql重建索引時允許使用的臨時文件最大大小

  myisam_sort_buffer_size=68M

  key_buffer_size=54M

  # Key Buffer大小,用于緩存MyISAM表的索引塊。決定數(shù)據(jù)庫索引處理的速度(尤其是索引讀)

  read_buffer_size=64K

  # 用于對MyISAM表全表掃描時使用的緩沖區(qū)大小。針對每個線程進行分配(前提是進行了全表掃描)。進行排序查詢時,MySql會首先掃描一遍該緩沖,以避免磁盤搜索,提高查詢速度,如果需要排序大量數(shù)據(jù),可適當調高該值。但MySql會為每個客戶連接發(fā)放該緩沖空間,所以應盡量適當設置該值,以避免內(nèi)存開銷過大。

  read_rnd_buffer_size=256K

  sort_buffer_size=256K

  # connection級參數(shù)(為每個線程配置),500個線程將消耗500*256K的sort_buffer_size。

  #------------------------------MyISAM相關參數(shù) end------------------------------------------------

  #-------------------------------# InnoDB相關參數(shù) begin ---------------------------------------

  innodb_additional_mem_pool_size=3M

  # InnoDB用于存儲元數(shù)據(jù)信息的內(nèi)存池大小,一般不需修改

  innodb_flush_log_at_trx_commit =1

  # 事務相關參數(shù),如果值為1,則InnoDB在每次commit都會將事務日志寫入磁盤(磁盤IO消耗較大),這樣保證了完全的ACID特性。而如果設置為0,則表示事務日志寫入內(nèi)存log和內(nèi)存log寫入磁盤的頻率都為1次/秒。如果設為2則表示事務日志在每次commit都寫入內(nèi)存log,但內(nèi)存log寫入磁盤的頻率為1次/秒。

  innodb_log_buffer_size=2M

  # InnoDB日志數(shù)據(jù)緩沖大小,如果緩沖滿了,就會將緩沖中的日志數(shù)據(jù)寫入磁盤(flush)。由于一般至少都1秒鐘會寫一次磁盤,所以沒必要設置過大,即使是長事務。

  innodb_buffer_pool_size=105M

  # InnoDB使用緩沖池來緩存索引和行數(shù)據(jù)。該值設置的越大,則磁盤IO越少。一般將該值設為物理內(nèi)存的80%。

  innodb_log_file_size=53M

  # 每一個InnoDB事務日志的大小。一般設為innodb_buffer_pool_size的25%到100%

  innodb_thread_concurrency=9

  # InnoDB內(nèi)核最大并發(fā)線程數(shù)

  #-------------------------------# InnoDB相關參數(shù) end ---------------------------------------

  my.ini文件配置好后就可以在cmd中安裝mysqld服務了,在cmd中運行命令:mysqld --install MySQL --defaults-file="D:\Program Files(x86)\MySql\my.ini",其中的MySQL是安裝服務器的名稱,可以指定任何名稱。安裝完成后會提示下面的信息:Service successfully installed,即表示成功安裝,安裝成功后會在系統(tǒng)的服務組策中添加該服務,在使用時只需要開啟即可。

  Note:在運行安裝命令時一定要注意必須cmd內(nèi)的路徑問題,該路徑必須在mysql的bin所在的路徑,比如我的mysql解壓到D:\Program Files(x86)\MySql文件夾中,那么cmd當前路徑就必須為D:\Program Files(x86)\MySql\bin,否則在安裝完成后啟動服務時會出現(xiàn)發(fā)生錯誤提示:系統(tǒng)錯誤 2。系統(tǒng)找不到指定的文件。

  2.2 啟動服務器

  啟動MySQL服務器,在cmd中運行命令:net start MySQL。

  2.3 停止服務器

  在使用完成后可以通過命令來停止服務器的運行,通過在cmd中運行命令:net stop MySQL,

  2.4 查看設計服務器名稱及密碼

  剛安裝的服務器它的默認名稱為root,此時沒有密碼,可以通過cmd命令來設置名稱和密碼。相應的命令為:mysql -u root。另外可通過在cmd中使用update語句來修改root的密碼,具體設置方法如下代碼所示:

  1、給root加個密碼ab12

  首先在DOS下進入目錄mysql\bin,然后鍵入以下命令: mysqladmin -u root -p password ab12 。

  Note:因為開始時root沒有密碼,所以-p舊密碼一項就可以省略了。

  2、再將root的密碼改為djg345:mysqladmin -u root -p ab12 password djg345

  2.5 刪除服務:mysqld --remove MySQL

  使用remove命令,后面跟上要刪除的數(shù)據(jù)庫服務的名稱。

三、MySql常用命令

3.1 連接服務

  這里介紹兩種連接方法分別為本地連接和遠程連接。

  3.1.1 本地連接

  在cmd中輸入并運行命令:mysql -u root -p,然后輸入相應的密碼。需要注意的是用戶名-u和用戶名之間也可以沒有空格,即-uroot同樣正確,但是密碼和-p之間必須要有空格。如果是剛安裝好的MYSQL,默認的root用戶名是沒有密碼的,直接輸入mysql -u root就可以進入MYSQL中了,MYSQL的提示符為:mysql>。

  3.1.2 遠程連接

  假設遠程主機的IP地址為:219.243.79.8,用戶名為root,密碼為123,則在cmd中運行如下命令:mysql -h219.243.79.8 -uroot -p 123。

  3.1.3 退出MYSQL命令:exit

3.2 增加新用戶

  3.2.1 超級用戶

  增加一個用戶test1密碼為abc,讓他可以在任何主機上登錄,并對所有數(shù)據(jù)庫有查詢、插入、修改、刪除的權限。首先用root用戶連入MYSQL,然后鍵入以下命令:

grant select,insert,update,delete on *.* to [email=test1@”%]test1@”%[/email]” Identified by “abc”;

  但增加的用戶是十分危險的,你想如某個人知道test1的密碼,那么他就可以在internet上的任何一臺電腦上登錄你的mysql數(shù)據(jù)庫并對你的數(shù)據(jù)可以為所欲為了,解決辦法見2。 3.2.2 本機用戶

  增加一個用戶test2密碼為abc,讓他只可以在localhost上登錄,并可以對數(shù)據(jù)庫mydb進行查詢、插入、修改、刪除的操作(localhost指本地主機,即MYSQL數(shù)據(jù)庫所在的那臺主機),這樣用戶即使用知道test2的密碼,他也無法從internet上直接訪問數(shù)據(jù)庫,只能通過MYSQL主機上的web頁來訪問了。

grant select,insert,update,delete on mydb.* to [email=test2@localhost]test2@localhost[/email] identified by “abc”;

  如果你不想test2有密碼,可以再打一個命令將密碼消掉。

grant select,insert,update,delete on mydb.* to [email=test2@localhost]test2@localhost[/email] identified by “”;

3.3 show命令

  show命令是查看的意思,可以用來查看MySql中的一些列表信息,如:show databases顯示所有數(shù)據(jù)庫的名稱;show tables顯示一個數(shù)據(jù)庫中的所有表名稱。

3.4 操作數(shù)據(jù)庫

  操作前要進入相關的數(shù)據(jù)庫,可以使用use命令,如:use testdb進入名為testdb的數(shù)據(jù)庫,進入數(shù)據(jù)庫后既可以對數(shù)據(jù)庫中的對象操作,相應的操作命令使用的是SQL語句,DDL、DML、DAL。

  3.4.1 查看數(shù)據(jù)庫內(nèi)容

  1、查看數(shù)據(jù)庫某個表的字段信息:desc 表名;

  2、查看數(shù)據(jù)庫表的創(chuàng)建語句:show create table 表名;當然使用同樣的方法也可以查看其它創(chuàng)建內(nèi)容的SQL語句,如查看數(shù)據(jù)庫的創(chuàng)建語句,show create database 數(shù)據(jù)庫名。

  3.4.2 修改表中列類型及名稱

 ?。?)只修改列類型

  alter table 數(shù)據(jù)庫名.表名 modify column 列名 數(shù)據(jù)類型,例如:將t_animal表的sex列該為boolean類型:

alter table t_animal modify sex boolean not null
  (2)同時修改列名和列數(shù)據(jù)類型 alter table 表名 change column 舊列名 新列名 數(shù)據(jù)類型,例如:將t_animal表的sex列更名為ani_sex,數(shù)據(jù)類型修改為boolean類型:

alter table t_animal change column sex ani_sex boolean not null
  結語

  本文對MySql的配置及使用方法做了初步的總結,MySql還有很多內(nèi)容在使用中慢慢積累,并且該文章也會不定時的添加新內(nèi)容,主要是針對開發(fā)過程中的情況而更新。文章的命令筆者都進行了測試,有哪些不對的地方還請指出互相學習。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Mysql5.7在windows7下my.ini文件加載路徑及數(shù)據(jù)位置修改方法
  • MySQL 5.6 & 5.7最優(yōu)配置文件模板(my.ini)
  • MySQL5.7缺少my.ini文件的解決方法
  • MySql 5.7.20安裝及data和my.ini文件的配置
  • Mysql my.ini 配置文件詳解
  • Windows下MySQL5.6查找my.ini配置文件的方法

標簽:那曲 四川 山南 平頂山 浙江 安徽 濮陽 安康

巨人網(wǎng)絡通訊聲明:本文標題《MySQL5.6.17數(shù)據(jù)庫安裝 如何配置My.ini文件》,本文關鍵詞  MySQL5.6.17,數(shù)據(jù)庫,安裝,如何,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL5.6.17數(shù)據(jù)庫安裝 如何配置My.ini文件》相關的同類信息!
  • 本頁收集關于MySQL5.6.17數(shù)據(jù)庫安裝 如何配置My.ini文件的相關信息資訊供網(wǎng)民參考!
  • 推薦文章