新聞中心
MySQL是一款常用的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),廣泛應(yīng)用于Web應(yīng)用程序的開發(fā)以及其他需要持久化存儲的應(yīng)用等領(lǐng)域。在Linux操作系統(tǒng)下進(jìn)行MySQL的安裝和配置也十分方便,我們可以通過各種工具和命令進(jìn)行MySQL的操作,但是在退出MySQL時,有時我們并不是十分清楚該如何合理退出,下面我們就來探討一下在Linux下如何合理退出MySQL。

成都創(chuàng)新互聯(lián)從2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元懷遠(yuǎn)做網(wǎng)站,已為上家服務(wù),為懷遠(yuǎn)各地企業(yè)和個人服務(wù),聯(lián)系電話:18982081108
1. 進(jìn)程結(jié)束
當(dāng)我們在Linux下使用MySQL時,它會在后臺運(yùn)行 MySQL服務(wù)器進(jìn)程,我們可以通過”ps -ef”或”ps aux”命令來查看當(dāng)前運(yùn)行的所有進(jìn)程。通過”ps”命令可以觀察到MySQL服務(wù)器的進(jìn)程ID及其他信息,通過”kill + 進(jìn)程ID”來結(jié)束進(jìn)程。這種方式比較粗暴,而且不夠友好,有時還會導(dǎo)致數(shù)據(jù)庫損壞,不建議使用。
2. 使用QUIT命令退出
使用QUIT命令可以讓MySQL服務(wù)器優(yōu)雅的退出,會進(jìn)行一系列清理操作以及數(shù)據(jù)保存等操作。在登錄到MySQL進(jìn)行操作時,我們可以直接在MySQL控制臺輸入”quit”命令,回車即可退出MySQL,并且對數(shù)據(jù)進(jìn)行了存儲操作,保證了數(shù)據(jù)的可靠性。
3. 使用SHUTDOWN命令
SHUTDOWN命令用于關(guān)閉MySQL服務(wù)器,類似于在Windows系統(tǒng)下使用Ctrl+Alt+Del強(qiáng)制關(guān)閉進(jìn)程,該命令會將MySQL服務(wù)器進(jìn)程完全殺死,這種方式的風(fēng)險較高,會影響數(shù)據(jù)庫的數(shù)據(jù)完整性。如果需要關(guān)閉MySQL服務(wù)器,可以使用命令”service mysql stop”命令,該命令會將MySQL服務(wù)器正常關(guān)閉,并保存數(shù)據(jù)。
4. 合理退出MySQL客戶端
在執(zhí)行某些操作后, MySQL客戶端可能會出現(xiàn)斷開連接的情況,此時MySQL服務(wù)器不會自動關(guān)閉,如果直接關(guān)閉客戶端,可能會導(dǎo)致MySQL服務(wù)器依然處于運(yùn)行狀態(tài)。
我們可以使用”Ctrl+C”命令終止當(dāng)前操作,然后使用”quit”命令退出MySQL客戶端,這樣就能避免MySQL服務(wù)器狀態(tài)不一致的問題。
5. 在命令后加-s參數(shù)
在通過命令行直接執(zhí)行MySQL命令進(jìn)行操作時,可以在命令后加上”-s”參數(shù)來避免MySQL命令行客戶端提示符的出現(xiàn)。這種方式雖然不會帶來實(shí)質(zhì)性的好處,但是可以去除MySQL提示符的干擾,讓我們更加專注于命令的執(zhí)行。
綜上所述,Linux下如何合理退出MySQL,需要根據(jù)實(shí)際情況選擇不同的方式,避免出現(xiàn)不必要的數(shù)據(jù)損壞和服務(wù)器狀態(tài)不一致等問題。在進(jìn)行MySQL的開發(fā)和維護(hù)時,合理退出MySQL是一項(xiàng)非常重要的任務(wù),需要我們細(xì)心呵護(hù)。
相關(guān)問題拓展閱讀:
- linux下安裝mysql,求助大俠們
linux下安裝mysql,求助大俠們
3. MySQL的安裝
MySQL有兩種安裝方式:源碼包安裝和二進(jìn)制包安裝。這兩種方式各有特色:二位制包安裝不需編譯,針對不同的平臺有經(jīng)
過優(yōu)化編譯的不同的二進(jìn)制文件以及包格式,安裝簡單方便;源碼包則必須先配置編譯再安裝,可以根據(jù)你所用的主機(jī)環(huán)境進(jìn)行優(yōu)化,選擇更佳的配置值,安裝定制
更靈活。下面分別介紹這兩種安裝方式。
3.1 源碼包方式安裝
3.1.1 在linux系統(tǒng)中添加運(yùn)行Mysql的用戶和組
/usr/in/groupadd mysql
/usr/in/useradd -d /var/lib/mysql -s /in/nologin -g mysql mysql
3.1.2 下載最新穩(wěn)定發(fā)行版(GA)的MySQL軟件
訪問MySQL網(wǎng)站
下載最新穩(wěn)定發(fā)行版的MySQL源碼包。本文使用的是5.0.51版本,在linux系統(tǒng)下用下面的命令下載:
wget
3.1.3 解壓縮下載的源碼包
首先建立一個工作目錄( 筆者建議的目錄此明為/usr/local/src/mysql ) :
mkdir -p /usr/local/src/mysql
將下載的源碼包移至工作目錄:
mv mysql-5.0.51.tar.gz /usr/local/src/mysql
進(jìn)入工作目錄并用tar命令解壓源碼包:
cd /usr/local/src/mysql
tar zxvf mysql-5.0.51.tar.gz
命令執(zhí)行結(jié)束后,當(dāng)前工作目錄下嘩悶將生成一個新的子目錄mysql-5.0.51,此目錄下即為mysql的源碼文件。
3.1.4 配置Makefile文件
進(jìn)入MySQL源碼目錄:
cd mysql-5.0.51
執(zhí)行下面的命令可查看可配置選項(xiàng):
./configure –help
本文使用的配置命令格式如下:
CC=gcc CFLAGS=”-O3″ CXX=gcc CXXFLAGS=”-O3 -felide-constructors
-fno-exceptions -fno-rtti” ./configure
–prefix=/usr/local/mysql –enable-thread-safe-client –enable-assembler
–with-big-tables –with-client-ldflags=-all-static
–with-mysqld-ldflags=-all-static –with-charset=utf8
–with-collation=utf8_general_ci –with-extra-charsets=complex
配置選項(xiàng)說明:
CC:C編譯器的名稱(用于運(yùn)行configure),本文示例為gcc
CFLAGS:C編譯器的標(biāo)志(用于運(yùn)行configure),本文示例為-O3,指定優(yōu)化級別森蘆告為3
CXX:C++編譯器的名稱(用于運(yùn)行configure),本文示例為gcc
CXXFLAGS:C++編譯器的標(biāo)志(用于運(yùn)行configure)
–prefix:指定安裝目錄,本文示例為/usr/local/mysql
–localstatedir:指定默認(rèn)數(shù)據(jù)庫文件保存目錄,默認(rèn)為安裝目錄下的var目錄
enable-thread-safe-client:編譯線程安全版的MySQL客戶端庫
–enable-assembler:使用一些字符函數(shù)的匯編版本
–with-client-ldflags:客戶端鏈接參數(shù),本文示例為指定靜態(tài)編譯mysql客戶端
–with-mysqld-ldflags:服務(wù)器端鏈接參數(shù),本文示例為指定靜態(tài)編譯mysql服務(wù)器
–with-big-tables:在32位平臺上支持大于4G行的表
–with-charset:指定默認(rèn)字符集。mysql默認(rèn)使用latin1(cp1252)字符集,可以使用此選項(xiàng)更改。字符集可以是big5、
cp1251、cp1257、czech、danish、dec8、dos、euc_kr、gb2312、gbk、german1、hebrew、
hp8、hungarian、koi8_ru、koi8_ukr、latin1、latin2、sjis、swe7、tis620、ujis、usa7或
win1251ukr。
–with-collation:指定默認(rèn)校對規(guī)則。mysql默認(rèn)使用latin1_swedish_ci校對規(guī)則,可以使用此選項(xiàng)更改。
–with-extra-charsets:服務(wù)器需要支持的字符集,有三種可能的值:空格間隔的一系列字符集名;complex ,包括不能動態(tài)裝載的所有字符集;all,將所有字符集包括進(jìn)二進(jìn)制。本文示例為complex。
注意:要想更改字符集和校對規(guī)則,要同時使用–with-charset和–with-collation選項(xiàng)。 校對規(guī)則必須是字符集的合法校對規(guī)則。(在mysql中使用SHOW COLLATION語句來確定每個字符集使用哪個校對規(guī)則)。
3.1.5 編譯源代碼
執(zhí)行下面的命令編譯源代碼:
make
3.1.6 安裝
執(zhí)行下面的命令安裝mysql到目標(biāo)路徑:
make install
3.1.7 復(fù)制默認(rèn)全局啟動參數(shù)配置文件到/etc目錄
源
碼方式安裝需要手動復(fù)制配置文件,配置模板位于源碼樹的support-files目錄,有my-all.cnf、my-medium.cnf、
my-large.cnf、my-huge.cnf四個,選擇跟你的環(huán)境相接近的一個復(fù)制到/etc目錄,并做適當(dāng)修改。關(guān)于mysql配置文件的詳細(xì)信
息請參閱筆者的其它文章或是mysql官方文檔。
本文示例選擇my-medium.cnf,執(zhí)行下面的命令將其復(fù)制到/etc目錄:
cp ./support-files/my-medium.cnf /etc/my.cnf
3.1.8 初始化授權(quán)表
執(zhí)行下面的命令初始化授權(quán)表:
./scripts/mysql_install_db –user=mysql
3.1.9 更改mysql數(shù)據(jù)目錄屬主和權(quán)限
默認(rèn)數(shù)據(jù)庫文件保存目錄為安裝目錄下的var目錄,執(zhí)行configure命令時可通過–localstatedir參數(shù)指定不同的目錄,本文示例為默認(rèn)位置。
chown -R mysql.mysql /usr/local/mysql/var
chmod -R 700 /usr/local/mysql/var
3.1.10 設(shè)置開機(jī)自啟動服務(wù)控制腳本
執(zhí)行下面的命令復(fù)制啟動腳本到資源目錄:
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
執(zhí)行下面的命令增加mysqld服務(wù)控制腳本執(zhí)行權(quán)限:
chmod +x /etc/rc.d/init.d/mysqld
執(zhí)行下面的命令將mysqld服務(wù)加入到系統(tǒng)服務(wù):
chkconfig –add mysqld
執(zhí)行下面的命令檢查mysqld服務(wù)是否已經(jīng)生效:
chkconfig –list mysqld
命令輸出類似下面的結(jié)果:
mysqld:off 1:off 2:on 3:on 4:on 5:on 6:off
表明mysqld服務(wù)已經(jīng)生效,在2、3、4、5運(yùn)行級別隨系統(tǒng)啟動而自動啟動,以后可以使用service命令控制mysql的啟動和停止。
啟動mysqld服務(wù):
service mysqld start
停止mysqld服務(wù):
service mysqld stop
執(zhí)行下面的命令關(guān)閉開機(jī)自啟動:
chkconfig mysqld off
執(zhí)行下面的命令可以改變開機(jī)自啟動的運(yùn)行級別為3、5:
chkconfig –level 35 mysqld on
3.1.11 將mysql的bin目錄加入PATH環(huán)境變量
編輯/etc/profile文件:
vi /etc/profile
在文件最后添加如下兩行:
PATH=$PATH:/usr/local/mysql/bin
export PATH
執(zhí)行下面的命令使所做的更改生效:
. /etc/profile
3.2 二進(jìn)制包方式安裝
3.2.1 從安裝媒體安裝
Mysql二進(jìn)制包已經(jīng)包含在CentOS 5的安裝媒體中,可以直接從安裝媒體中安裝下面三個rpm包:
mysql-5.0.22-2.1.0.1.i386.rpm
mysql-devel-5.0.22-2.1.0.1.i386.rpm
mysql-server-5.0.22-2.1.0.1.i386.rpm
不同的版本文件名有所不同,請注意區(qū)分。
執(zhí)行下面的命令安裝:
rpm -iUvh mysql-5.0.22-2.1.0.1.i386.rpm
rpm -iUvh mysql-devel-5.0.22-2.1.0.1.i386.rpm
rpm -iUvh mysql-server-5.0.22-2.1.0.1.i386.rpm
3.2.2 通過yum安裝
如果你安裝的機(jī)器此時可以連接到互聯(lián)網(wǎng),筆者建議使用yum命令來簡化安裝過程:
yum install mysql-server mysql-devel mysql
yum將自動從centos的鏡像站點(diǎn)查找你指明的軟件的最新二進(jìn)制包,并檢查軟件包依賴關(guān)系,安裝軟件的同時自動安裝其依賴的軟件包。
3.2.3 從mysql網(wǎng)站下載最新穩(wěn)定版本的二進(jìn)制包安裝
通過CentOS安裝媒體或yum安裝的二進(jìn)制包版本會落后于mysql開發(fā)者網(wǎng)站發(fā)布的版本,可以從mysql網(wǎng)站下載安裝最新穩(wěn)定版本的mysql。
訪問MySQL網(wǎng)站
下
載最新穩(wěn)定發(fā)行版的相應(yīng)硬件平臺的MySQL。本文使用的是Red Hat Enterprise Linux 5 RPM (x86)
5.0.45版本。需要下載Server、Client、Headers and Libraries、Share Libraries/Shared
compatibility libraries幾個rpm包,其它為可選包,按需要選擇。
在linux系統(tǒng)下用下面的命令下載:
wget
wget
wget
wget
wget
執(zhí)行下面的命令安裝:
rpm -iUvh MySQL-server-community-5.0.45-0.rhel5.i386.rpm
rpm -iUvh MySQL-client-community-5.0.45-0.rhel5.i386.rpm
rpm -iUvh MySQL-devel-community-5.0.45-0.rhel5.i386.rpm
rpm -iUvh MySQL-shared-community-5.0.45-0.rhel5.i386.rpm
rpm -iUvh MySQL-shared-compat-5.0.45-0.rhel5.i386.rpm
4. MySQL的配置
4.1 目錄結(jié)構(gòu)
4.1.1 源碼包方式安裝目錄結(jié)構(gòu)
源碼包方式安裝時通常是在3.1.4節(jié)中configure命令的–prefix選項(xiàng)指定的目錄中建立如下的目錄結(jié)構(gòu),特殊指定的目錄除外:
./bin #mysql用戶可執(zhí)行文件目錄
./include/mysql#mysql C頭文件目錄
./info #mysql 信息文件目錄
./lib/mysql #mysql庫文件目錄
./libexec#mysql后臺daemon程序目錄
./man #mysql聯(lián)機(jī)幫助文檔目錄
./mysql-test #mysql測試程序目錄
./share/mysql#mysql公用文件目錄,包括字符集、配置文件模板、啟動腳本、初始化SQL文件等
./sql-bench #mysql壓力測試程序目錄
/etc/my.cnf #mysql配置文件
/etc/rc.d/init.d/mysqld #mysqld服務(wù)啟動腳本
4.1.2 RPM二進(jìn)制包方式安裝目錄結(jié)構(gòu)
二進(jìn)制包方式安裝時使用系統(tǒng)軟件默認(rèn)目錄結(jié)構(gòu) :
/usr/bin#mysql用戶可執(zhí)行文件目錄
/usr/libexec#mysql后臺daemon程序目錄
/usr/lib/mysql#mysql庫文件目錄
/usr/lib64/mysql #如果為64系統(tǒng),mysql 64位庫文件目錄
/usr/share/doc#mysql文檔目錄
/usr/share/info#mysql信息文件目錄
/usr/share/man #mysql聯(lián)機(jī)幫助文檔目錄
/usr/share/mysql #mysql字符集目錄
/usr/include/mysql #mysql C頭文件目錄
/var/log#mysqld服務(wù)日志文件目錄
/var/run/mysqld #mysqld服務(wù)運(yùn)行狀態(tài)目錄
/var/lib/mysql#mysql數(shù)據(jù)文件目錄
/etc/my.cnf #mysql配置文件
/etc/rc.d/init.d/mysqld #mysqld服務(wù)啟動腳本
4.2 配置文件
Linux
系統(tǒng)下,mysql的配置參數(shù)文件為my.cnf,一般按下面的順序查找此文件:/etc目錄、mysql安裝目錄、mysql數(shù)據(jù)目錄。配置模板位于源
碼樹的support-files目錄,有my-all.cnf、my-medium.cnf、my-large.cnf、my-huge.cnf四
個,關(guān)于mysql配置文件的詳細(xì)信息請參閱筆者的其它文章或是mysql官方文檔。
4.3 啟動mysqld服務(wù)
執(zhí)行下面的命令啟動mysql:
service mysqld start
4.3 設(shè)置mysql帳號
mysql安裝后默認(rèn)生成兩個帳號:一個是root,未設(shè)置密碼,可以從本機(jī)登錄到mysql;另一個是匿名帳號,無帳號名、無密碼,可以從本機(jī)登錄,未提供用戶名的連接都將假定為此帳號。這樣的設(shè)置存在著安全隱患,按下面的步驟進(jìn)行更改。
以root帳號連接到mysql服務(wù)器:
mysql -u root
如果提示找不到mysql文件,請嘗試使用絕對路徑,如本文示例為:
/usr/local/mysql/bin/mysql -u root
命令成功執(zhí)行后將進(jìn)入到mysql命令提示符下:
mysql>
(以下命令均在mysql命令提示符下執(zhí)行)
改變當(dāng)前數(shù)據(jù)庫為mysql:
use mysql
設(shè)置從本地主機(jī)登錄的root帳號密碼:
set password for root@localhost=password(‘your password’);
或:
update user set password=password(‘your password’) where user=’root’ and host=’localhost’;
刪除匿名帳號:
delete from user where user=” ;
刪除密碼為空的帳號:
delete from user where password=”;
刪除允許非localhost主機(jī)登錄的帳號:
delete from user where host’localhost’ ;
執(zhí)行下面的命令使更改生效:
flush privileges ;
執(zhí)行下面的命令退出mysql命令行:
quit
或:
/q
5. 結(jié)束語
至此,Mysql基本安裝完畢。希望本文能對初學(xué)者有所幫助。
關(guān)于linux 退出 mysql的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
創(chuàng)新互聯(lián)服務(wù)器托管擁有成都T3+級標(biāo)準(zhǔn)機(jī)房資源,具備完善的安防設(shè)施、三線及BGP網(wǎng)絡(luò)接入帶寬達(dá)10T,機(jī)柜接入千兆交換機(jī),能夠有效保證服務(wù)器托管業(yè)務(wù)安全、可靠、穩(wěn)定、高效運(yùn)行;創(chuàng)新互聯(lián)專注于成都服務(wù)器托管租用十余年,得到成都等地區(qū)行業(yè)客戶的一致認(rèn)可。
網(wǎng)頁名稱:如何合理退出Linux下的MySQL?(linux退出mysql)
新聞來源:http://fisionsoft.com.cn/article/cddioji.html


咨詢
建站咨詢
