最近在做項目開發(fā)時用到了MySql數(shù)據(jù)庫,在看了一些有關(guān)MySql的文章后,很快就上手使用了。在使用的過程中還是出現(xiàn)了一些問題,因為使用的是綠色免安裝版的MySql所以在配置的時候出現(xiàn)了一些問題,該篇文章就主要針對MySql綠色版的配置及其使用進行討論。
一、MySql概述
MySql數(shù)據(jù)庫是有瑞典MySql AB公司開發(fā),現(xiàn)在該公司被Oracle收購屬于Oracle所有。同SQL Server類似,它也是基于關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)庫管理系統(tǒng),在Web應(yīng)用方面MySQL是最好的RDBMS之一,因為它屬于輕量級的RDBMS。 現(xiàn)在MySql的最新版本是5.6.17,最新下載地址,下載完成了接下來進行安裝部署了,有關(guān)安裝部署的內(nèi)容在網(wǎng)上查看下教程就可以。
二、MySql配置
既然MySql采用的是SQL為基礎(chǔ),那么他就包含基本的DML、DDL、DAL,這些基本的數(shù)據(jù)庫語言是很容易上手使用的,另外MySql還封裝了很多數(shù)據(jù)庫操作命令,這些命令是在dos系統(tǒng)中運行的,這是他和SQL Server的不同之處,MySql的環(huán)境是簡歷在dos系統(tǒng)之上的,要使用dos命令。它和java有點類似,可以說它也是建立在虛擬機之上的,可以實現(xiàn)一次建立到處使用。想要方便的使用MySql命令還需要一些前提進行設(shè)置,設(shè)置方法類似于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服務(wù)器配置
在配置了系統(tǒng)的環(huán)境變量后就可以使用MySql的bin下提供的所有服務(wù)了,接下來還需要在系統(tǒng)中安裝MySQL。
2.1 安裝MySql服務(wù)器
打開解壓文件目錄,找到后綴名為.ini的文件,復(fù)制一份更名為my.ini,使用下面的內(nèi)容替換原有的內(nèi)容。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
[mysqld] basedir=D:/Program Files (x86)/MySql # 設(shè)置mysql的安裝目錄 datadir=D:/Program Files (x86)/MySql/data # 設(shè)置mysql數(shù)據(jù)庫的數(shù)據(jù)的存放目錄,必須是data,或者是//xxx/data *************************分割線******************* port = 3306 socket = /tmp/mysql.sock default - character - set =gbk # 設(shè)置mysql服務(wù)器的字符集 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需要設(shè)置為文件解壓后的路徑,在此處筆者將文件放到了D:\Program Files (x86)\MySql下。另外上面的分割線內(nèi)的內(nèi)容是可選的,可以在建立數(shù)據(jù)庫的時候重新設(shè)置,建議在創(chuàng)建時不要添加,因為會有很多不確定因素。
my.ini文件配置好后就可以在cmd中安裝mysqld服務(wù)了,在cmd中運行命令:mysqld --install MySQL --defaults-file="D:\Program Files(x86)\MySql\my.ini",其中的MySQL是安裝服務(wù)器的名稱,可以指定任何名稱。安裝完成后會提示下面的信息:Service successfully installed,即表示成功安裝,安裝成功后會在系統(tǒng)的服務(wù)組策中添加該服務(wù),在使用時只需要開啟即可。
Note:在運行安裝命令時一定要注意必須cmd內(nèi)的路徑問題,該路徑必須在mysql的bin所在的路徑,比如我的mysql解壓到D:\Program Files(x86)\MySql文件夾中,那么cmd當前路徑就必須為D:\Program Files(x86)\MySql\bin,否則在安裝完成后啟動服務(wù)時會出現(xiàn)發(fā)生錯誤提示:系統(tǒng)錯誤 2。系統(tǒng)找不到指定的文件。
2.2 啟動服務(wù)器
啟動MySQL服務(wù)器,在cmd中運行命令:net start MySQL。
2.3 停止服務(wù)器
在使用完成后可以通過命令來停止服務(wù)器的運行,通過在cmd中運行命令:net stop MySQL。
2.4 查看設(shè)計服務(wù)器名稱及密碼
剛安裝的服務(wù)器它的默認名稱為root,此時沒有密碼,可以通過cmd命令來設(shè)置名稱和密碼。相應(yīng)的命令為:mysql -u root。另外可通過在cmd中使用update語句來修改root的密碼,具體設(shè)置方法如下代碼所示:
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 刪除服務(wù):mysqld --remove MySQL
使用remove命令,后面跟上要刪除的數(shù)據(jù)庫服務(wù)的名稱。
三、MySql常用命令
3.1 連接服務(wù)
這里介紹兩種連接方法分別為本地連接和遠程連接。
3.1.1 本地連接
在cmd中輸入并運行命令:mysql -u root -p,然后輸入相應(yīng)的密碼。需要注意的是用戶名-u和用戶名之間也可以沒有空格,即-uroot同樣正確,但是密碼和-p之間必須要有空格。如果是剛安裝好的MYSQL,默認的root用戶名是沒有密碼的,直接輸入mysql -u root就可以進入MYSQL中了,MYSQL的提示符為:mysql>。
3.1.2 遠程連接
假設(shè)遠程主機的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ù)庫有查詢、插入、修改、刪除的權(quán)限。首先用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ù)庫
操作前要進入相關(guān)的數(shù)據(jù)庫,可以使用use命令,如:use testdb進入名為testdb的數(shù)據(jù)庫,進入數(shù)據(jù)庫后既可以對數(shù)據(jù)庫中的對象操作,相應(yīng)的操作命令使用的是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 修改表中列類型及名稱
(1)只修改列類型
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
結(jié)語
本文對MySql的配置及使用方法做了初步的總結(jié),MySql還有很多內(nèi)容在使用中慢慢積累,并且該文章也會不定時的添加新內(nèi)容,主要是針對開發(fā)過程中的情況而更新。
文章的命令筆者都進行了測試,有哪些不對的地方還請指出互相學(xué)習(xí)。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本