linux系統(tǒng)下安裝配置解壓版的MySQL數(shù)據(jù)庫方法步驟
MySQL是一種關(guān)系數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性。那么在Linux系統(tǒng)下怎么配置呢?這篇文章主要介紹了linux系統(tǒng)下安裝配置解壓版的MySQL數(shù)據(jù)庫的相關(guān)資料,需要的朋友可以參考下。
一、解壓文件到當(dāng)前目錄
命令:tar -zxvf mysql....tar.gz
二、移動解壓完成的文件夾到目標(biāo)目錄并更名mysql
命令:mv mysql-版本號 /usr/local/mysql
添加系統(tǒng)mysql組和mysql用戶
添加系統(tǒng)mysql組
sudo groupadd mysql
添加mysql用戶
sudo useradd -r -g mysql mysql
添加完成后可用id mysql查看
然后進(jìn)入/usr/local/mysql目錄
設(shè)置mysql用戶組對該文件夾操作權(quán)限
命令:chown -R mysql:mysql ./
查看/etc/my.cnf 是否存在,如果存在刪除掉
查看命令: ls /etc/my.cnf
刪除命令: rm /etc/my.cnf
初始化數(shù)據(jù)庫
命令:./scripts/mysql_install_db --user=mysql
注:如果執(zhí)行此命令報如下錯誤
需安裝yum包
命令:yum -y install perl perl-devel
安裝完成重新執(zhí)行初始化數(shù)據(jù)庫命令
然后進(jìn)入support-files文件夾
拷貝my-default.cnf到/etc下更名為my.cnf
命令:cp my-default.cnf /etc/my.cnf
拷貝啟動文件mysql.server到/etc/rc.d/init.d下并更名為mysql
命令: cp mysql.server /etc/rc.d/init.d/mysql
然后配置mysql開機自啟動
進(jìn)入/etc/init.d目錄
給mysql賦可執(zhí)行權(quán)限
命令:chmod +x mysql
添加服務(wù)
命令:chkconfig --add mysql
查看服務(wù)列表
命令:chkconfig --list
如果看到mysql的服務(wù),并且3,4,5都是on的話則成功,如果是off,則鍵入
chkconfig --level 345 mysql on
重啟電腦
檢查監(jiān)聽查看是否服務(wù)啟動
命令:netstat -na |grep 3306
更改用戶可以遠(yuǎn)程操作數(shù)據(jù)庫
授權(quán)操作
命令:grant all privileges on *.* to '%'@'%' identified by 'mypassword' with grant option;
刷新授權(quán)
flush privileges;
遠(yuǎn)程連接
刪除其他用戶
補充:MySQL 數(shù)據(jù)庫常用命令
create database name; 創(chuàng)建數(shù)據(jù)庫
use databasename; 進(jìn)入數(shù)據(jù)庫
drop database name 直接刪除數(shù)據(jù)庫,不提醒
show tables; 顯示表
describe tablename; 查看表的結(jié)構(gòu)
select 中加上distinct去除重復(fù)字段
mysqladmin drop databasename 刪除數(shù)據(jù)庫前,有提示。
顯示當(dāng)前mysql版本和當(dāng)前日期
select version(),current_date;
數(shù)據(jù)庫維護方法
在MySQL使用的過程中,在系統(tǒng)運行一段時間后,可能會產(chǎn)生碎片,造成空間的浪費,所以有必要定期的對MySQL進(jìn)行碎片整理。
當(dāng)刪除id=2的記錄時候,發(fā)生的現(xiàn)象
這個時候發(fā)現(xiàn)磁盤的空間并沒有減少。這種現(xiàn)象就叫做碎片化(有一部分的磁盤空間在數(shù)據(jù)刪除以后(空),還是無法被操作系統(tǒng)所使用。)
常見的優(yōu)化:
# alter table xxx engine myisam;
# optimize table t1;
注意: 在實際開發(fā)的過程中,上面兩個語句盡量少使用,因為在使用的過程中,MySQL的表的結(jié)構(gòu)會整體全部重新整理,需要消耗很多的資源,建議在凌晨兩三點鐘的時候執(zhí)行。(在linux下有定時器腳本可以執(zhí)行,crontab)