如果要在Linux上做j2ee開發(fā)呛哟,首先得搭建好j2ee的開發(fā)環(huán)境陈瘦,包括了jdk墓拜、tomcat硼控、eclipse的安裝(這個在之前的一篇隨筆中已經有詳細講解了Linux學習之CentOS(七)--CentOS下j2ee環(huán)境搭建),如果要開發(fā)web項目刘陶,我們當然可以安裝一個myeclipse到Linux系統(tǒng)上去,這個安裝方法和安裝eclipse完全相同牢撼,就沒有記錄下來了匙隔,有了jdk、tomcat浪默、eclipse我們就已經能進行我們的程序開發(fā)了牡直,但是如果要做一個項目,哪怕是小的不能再小的項目都離不開數據的存儲呀D删觥E鲆荨!沒錯饵史,咱們還差一個最重要的軟件沒有裝,也就是數據庫Jだ啤8炫纭!如果沒有了數據庫夭织,咱們做項目簡直是空想吭露,所以呢,對于數據庫安裝這塊尊惰,專門為安裝mysql數據庫寫了這篇隨筆讲竿。深胳。庆聘。。穴店。膀捷。
一迈嘹、mysql簡介
說到數據庫,我們大多想到的是關系型數據庫全庸,比如mysql秀仲、oracle、sqlserver等等壶笼,這些數據庫軟件在windows上安裝都非常的方便啄育,在Linux上如果要安裝數據庫,咱不得不首先推薦的是mysql數據庫了拌消,而且Mysql數據庫的第一個版本就是發(fā)行在Linux系統(tǒng)上的。
MySQL是一個關系型數據庫管理系統(tǒng),由瑞典MySQL
AB公司開發(fā)墩崩,目前屬于Oracle公司氓英。MySQL是一種關聯數據庫管理系統(tǒng),關聯數據庫將數據保存在不同的表中鹦筹,而不是將所有數據放在一個大倉庫內铝阐,這樣就增加了速度并提高了靈活性。MySQL的SQL語言是用于訪問數據庫的最常用標準化語言铐拐。MySQL軟件采用了雙授權政策(本詞條“授權政策”)徘键,它分為社區(qū)版和商業(yè)版,由于其體積小遍蟋、速度快吹害、總體擁有成本低,尤其是開放源碼這一特點虚青,一般中小型網站的開發(fā)都選擇MySQL作為網站數據庫它呀。由于其社區(qū)版的性能卓越,搭配PHP和Apache可組成良好的開發(fā)環(huán)境棒厘。
在Linux上安裝mysql數據庫纵穿,我們可以去其官網上下載mysql數據庫的rpm包,http://dev.mysql.com/downloads/mysql/5.6.html#downloads奢人,大家可以根據自己的操作系統(tǒng)去下載對應的數據庫文件谓媒,目前最新的版本是5.6.10了。
在這里我是通過yum來進行mysql數據庫的安裝的何乎,通過這種方式進行安裝句惯,可以將跟mysql相關的一些服務、jar包都給我們安裝好宪赶,所以省去了很多不必要的麻煩W谕洹!搂妻!
二蒙保、卸載掉原有mysql
因為mysql數據庫在Linux上實在是太流行了,所以目前下載的主流Linux系統(tǒng)版本基本上都集成了mysql數據庫在里面欲主,我們可以通過如下命令來查看我們的操作系統(tǒng)上是否已經安裝了mysql數據庫
[root@xiaoluo ~]# rpm -qa |grepmysql // 這個命令就會查看該操作系統(tǒng)上是否已經安裝了mysql數據庫
有的話邓厕,我們就通過 rpm -e 命令 或者 rpm -e --nodeps 命令來卸載掉
[root@xiaoluo ~]# rpm -e mysql //普通刪除模式[root@xiaoluo~]# rpm -e --nodeps mysql //強力刪除模式,如果使用上面命令刪除時扁瓢,提示有依賴的其它文件详恼,則用該命令可以對其進行強力刪除
在刪除完以后我們可以通過 rpm -qa | grep mysql 命令來查看mysql是否已經卸載成功!引几!
三昧互、通過yum來進行mysql的安裝
我是通過yum的方式來進行mysql的數據庫安裝,首先我們可以輸入 yum list | grep mysql 命令來查看yum上提供的mysql數據庫可下載的版本:
[root@xiaoluo ~]#yumlist |grepmysql
就可以得到y(tǒng)um服務器上mysql數據庫的可下載版本信息:
然后我們可以通過輸入yum install -y mysql-server mysql mysql-devel命令將mysql mysql-server mysql-devel都安裝好(注意:安裝mysql時我們并不是安裝了mysql客戶端就相當于安裝好了mysql數據庫了,我們還需要安裝mysql-server服務端才行)
[root@xiaoluo ~]#yuminstall-y mysql-server mysql mysql-deve
在等待了一番時間后敞掘,yum會幫我們選擇好安裝mysql數據庫所需要的軟件以及其它附屬的一些軟件
我們發(fā)現叽掘,通過yum方式安裝mysql數據庫省去了很多沒必要的麻煩,當出現下面的結果時玖雁,就代表mysql數據庫安裝成功了
此時我們可以通過如下命令更扁,查看剛安裝好的mysql-server的版本
[root@xiaoluo ~]# rpm -qi mysql-server
我們安裝的mysql-server并不是最新版本,如果你想嘗試最新版本赫冬,那就去mysql官網下載rpm包安裝就行了浓镜,至此我們的mysql數據庫已經安裝完成了。
四劲厌、mysql數據庫的初始化及相關配置
我們在安裝完mysql數據庫以后膛薛,會發(fā)現會多出一個mysqld的服務,這個就是咱們的數據庫服務脊僚,我們通過輸入service mysqld start命令就可以啟動我們的mysql服務相叁。
注意:如果我們是第一次啟動mysql服務,mysql服務器首先會進行初始化的配置辽幌,如:
[root@xiaoluo ~]#service mysqld start初始化 MySQL 數據庫: WARNING: The host'xiaoluo'could not be looked up with resolveip.
This probably means that your libc libraries are not100%compatible
with this binary MySQL version. The MySQL daemon, mysqld, should work
normally with the exception that host name resolving will not work.
This means that you should use IP addresses instead of hostnames
when specifying MySQL privileges!Installing MySQL system tables...
OK
Filling help tables...
OK
To start mysqld at boottimeyou have to copy
support-files/mysql.server to the right placeforyour system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER!Todoso, start the server,thenissue the following commands:/usr/bin/mysqladmin -u root password'new-password'/usr/bin/mysqladmin -u root -h xiaoluo password'new-password'Alternatively you can run:/usr/bin/mysql_secure_installationwhichwill also give you the option of removing the test
databases and anonymous user created by default.? This is
strongly recommendedforproduction servers.
See the manualformoreinstructions.
You can start the MySQL daemon with:
cd/usr ; /usr/bin/mysqld_safe &You can test the MySQL daemon with mysql-test-run.pl
cd/usr/mysql-test ;perlmysql-test-run.pl
Please report any problems with the/usr/bin/mysqlbug script![確定]
正在啟動 mysqld:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? [確定]
這時我們會看到第一次啟動mysql服務器以后會提示非常多的信息增淹,目的就是對mysql數據庫進行初始化操作,當我們再次重新啟動mysql服務時乌企,就不會提示這么多信息了虑润,如:
[root@xiaoluo ~]#service mysqld restart停止 mysqld:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? [確定]正在啟動 mysqld:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? [確定]
我們在使用mysql數據庫時,都得首先啟動mysqld服務加酵,我們可以 通過chkconfig --list | grep mysqld命令來查看mysql服務是不是開機自動啟動拳喻,如:
[root@xiaoluo ~]# chkconfig --list |grepmysqld
mysqld0:關閉1:關閉2:關閉3:關閉4:關閉5:關閉6:關閉
我們發(fā)現mysqld服務并沒有開機自動啟動,我們當然可以通過chkconfig mysqld on命令來將其設置成開機啟動猪腕,這樣就不用每次都去手動啟動了
[root@xiaoluo ~]# chkconfig mysqld on
[root@xiaoluo~]# chkconfig --list |grepmysql
mysqld0:關閉1:關閉2:啟用3:啟用4:啟用5:啟用6:關閉
mysql數據庫安裝完以后只會有一個root管理員賬號冗澈,但是此時的root賬號還并沒有為其設置密碼,在第一次啟動mysql服務時陋葡,會進行數據庫的一些初始化工作亚亲,在輸出的一大串信息中,我們看到有這樣一行信息 :
/usr/bin/mysqladmin -u root password 'new-password'// 為root賬號設置密碼
所以我們可以通過 該命令來給我們的root賬號設置密碼(注意:這個root賬號是mysql的root賬號腐缤,非Linux的root賬號)
[root@xiaoluo ~]#mysqladmin -u root password'root' // 通過該命令給root賬號設置密碼為 root
此時我們就可以通過mysql -u root -p命令來登錄我們的mysql數據庫了
五捌归、mysql數據庫的主要配置文件
1./etc/my.cnf這是mysql的主配置文件
我們可以查看一下這個文件的一些信息
[root@xiaoluo etc]#lsmy.cnf my.cnf
[root@xiaoluo etc]#catmy.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
2./var/lib/mysqlmysql數據庫的數據庫文件存放位置
我們的mysql數據庫的數據庫文件通常是存放在了/ver/lib/mysql這個目錄下
[root@xiaoluo ~]# cd /var/lib/mysql/[root@xiaoluo mysql]#ls-l
總用量20488-rw-rw----.1mysql mysql104857604月622:01ibdata1-rw-rw----.1mysql mysql52428804月622:01ib_logfile0-rw-rw----.1mysql mysql52428804月621:59ib_logfile1
drwx------.2mysql mysql40964月621:59mysql // 這兩個是mysql數據庫安裝時默認的兩個數據庫文件srwxrwxrwx.1mysql mysql04月622:01mysql.sock
drwx------.2mysql mysql40964月621:59test// 這兩個是mysql數據庫安裝時默認的兩個數據庫文件
我們可以自己創(chuàng)建一個數據庫,來驗證一下該數據庫文件的存放位置
創(chuàng)建一個我們自己的數據庫:mysql>create database xiaoluo;
Query OK,1row affected (0.00sec)
[root@xiaoluo mysql]#ls-l
總用量20492-rw-rw----.1mysql mysql104857604月622:01ibdata1-rw-rw----.1mysql mysql52428804月622:01ib_logfile0-rw-rw----.1mysql mysql52428804月621:59ib_logfile1
drwx------.2mysql mysql40964月621:59mysql
srwxrwxrwx.1mysql mysql04月622:01mysql.sock
drwx------.2mysql mysql40964月621:59test
drwx------.2mysql mysql40964月622:15xiaoluo // 這個就是我們剛自己創(chuàng)建的xiaoluo數據庫[root@xiaoluo mysql]# cd xiaoluo/[root@xiaoluo xiaoluo]#lsdb.opt
3./var/logmysql數據庫的日志輸出存放位置
我們的mysql數據庫的一些日志輸出存放位置都是在/var/log這個目錄下
[root@xiaoluo xiaoluo]# cd
[root@xiaoluo~]# cd /var/log
[root@xiaoluo log]#lsamanda? ? ? ? ? ? ? ? cron? ? ? ? ? maillog-20130331spice-vdagent.log
anaconda.ifcfg.log? ? cron-20130331mcelog? ? ? ? ? ? spooler
anaconda.log? ? ? ? ? cups? ? ? ? ? messages? ? ? ? ? spooler-20130331anaconda.program.log? dirsrv? ? ? ? messages-20130331sssdanaconda.storage.log? dmesgmysqld.logtallyloganaconda.syslog? ? ? dmesg.old? ? ? ntpstats? ? ? ? ? tomcat6anaconda.xlog? ? ? ? dracut.log? ? piranha? ? ? ? ? ? wpa_supplicant.loganaconda.yum.log? ? ? gdm? ? ? ? ? ? pm-powersave.log? wtmp
audit? ? ? ? ? ? ? ? httpd? ? ? ? ? ppp? ? ? ? ? ? ? ? Xorg.0.log
boot.log? ? ? ? ? ? ? ibacm.log? ? ? prelink? ? ? ? ? ? Xorg.0.log.old
btmp? ? ? ? ? ? ? ? ? lastlog? ? ? ? sa? ? ? ? ? ? ? ? Xorg.1.log
btmp-20130401libvirt? ? ? ? samba? ? ? ? ? ? ? Xorg.2.log
cluster? ? ? ? ? ? ? luci? ? ? ? ? secure? ? ? ? ? ? Xorg.9.log
ConsoleKit? ? ? ? ? ? maillog? ? ? ? secure-20130331yum.log
其中mysqld.log 這個文件就是我們存放我們跟mysql數據庫進行操作而產生的一些日志信息岭粤,通過查看該日志文件惜索,我們可以從中獲得很多信息
因為我們的mysql數據庫是可以通過網絡訪問的,并不是一個單機版數據庫剃浇,其中使用的協議是 tcp/ip 協議巾兆,我們都知道m(xù)ysql數據庫綁定的端口號是 3306 猎物,所以我們可以通過netstat -anp命令來查看一下,Linux系統(tǒng)是否在監(jiān)聽 3306 這個端口號:
結果如上所示臼寄,Linux系統(tǒng)監(jiān)聽的3306端口號就是我們的mysql數據庫0赞取!<!