LINUX下MYSQL完全安裝使用指南
學(xué)習(xí)了很長(zhǎng)時(shí)間的linux,有必要做一下整理筆記了,以下是mysql的安裝筆記,和常見(jiàn)的一些使用方法。
因我喜歡調(diào)試優(yōu)化系統(tǒng),所以在編譯安裝時(shí)使用了一些選項(xiàng)增加編程后程序的執(zhí)行效率,有些可能我理解有錯(cuò),希望大家指出.
●安裝mysql
# tar zxvf mysql-4.0.14.tar.gz -C /setup
# cd /setup/mysql-4.0.14
# groupadd mysql
# useradd mysql -g mysql -M -s /bin/false
# ./configure --prefix=/web/mysql 指定安裝目錄
--without-debug 去除debug模式
--with-extra-charsets=gb2312 添加gb2312中文字符支持
--enable-assembler 使用一些字符函數(shù)的匯編版本
--without-isam 去掉isam表類(lèi)型支持 現(xiàn)在很少用了 isam表是一種依賴(lài)平臺(tái)的表
--without-innodb 去掉innodb表支持 innodb是一種支持事務(wù)處理的表,適合企業(yè)級(jí)應(yīng)用
--with-pthread 強(qiáng)制使用pthread庫(kù)(posix線程庫(kù))
--enable-thread-safe-client 以線程方式編譯客戶端
--with-client-ldflags=-all-static
--with-mysqld-ldflags=-all-static 以純靜態(tài)方式編譯服務(wù)端和客戶端 --with-raid 激活raid支持
# make
# make install
# s/mysql_install_db 生成mysql用戶數(shù)據(jù)庫(kù)和表文件
# cp support-files/my-medium.cnf /etc/my.cnf copy配置文件,有l(wèi)arge,medium,small三個(gè)環(huán)境下的,根據(jù)機(jī)器性能選擇,如果負(fù)荷比較大,可修改里面的一些變量的內(nèi)存使用值
# cp support-files/mysql.server /etc/init.d/mysqld copy啟動(dòng)的mysqld文件
# chmod 700 /etc/init.d/mysqld
# cd /web
# chmod 750 mysql -R
# chgrp mysql mysql -R
# chown mysql mysql/var -R
# cd /web/mysql/libexec
# cp mysqld mysqld.old
# strip mysqld
# chkconfig --add mysqld
# chkconfig --level 345 mysqld on
# service mysqld start
# netstat -atln
看看有沒(méi)有3306的端口打開(kāi),如果mysqld不能啟動(dòng),看看/web/mysql/var下的出錯(cuò)日志,一般都是目錄權(quán)限沒(méi)有設(shè)置好的問(wèn)題
# ln -s /web/mysql/bin/mysql /sbin/mysql
# ln -s /web/mysql/bin/mysqladmin /sbin/mysqladmin
# mysqladmin -uroot password "youpassword" #設(shè)置root帳戶的密碼
# mysql -uroot -p
# 輸入你設(shè)置的密碼
mysql>use mysql;
mysql>delete from user where password=""; #刪除用于本機(jī)匿名連接的空密碼帳號(hào)
mysql>flush privileges;
mysql>quit
●安裝DBI和DBD for mysql 用于提供perl訪問(wèn)mysql數(shù)據(jù)庫(kù)的接口規(guī)范,請(qǐng)確認(rèn)你已經(jīng)安裝了perl,一般默認(rèn)系統(tǒng)都裝上了
# cd /setup
# tar zxvf DBD-mysql-2.9002.tar.gz -C /setup
# tar zxvf DBI-1.38.tar.gz -C /setup
# cd DBI-1.38
# perl Makefile.PL
# make
# make test
# make install
因?yàn)橛械膒erl程序中perl的路徑是/usr/local/bin/perl,而紅帽系統(tǒng)默認(rèn)是/usr/bin/perl,所以最好做一個(gè)連接,保證兼容性
# ln -s /usr/bin/perl /usr/local/bin/perl
# cd ../DBD-mysql-2.9002
生成安裝配置文件需要在perl Makefile.PL后添加一些參數(shù),比較麻煩,我們可以通過(guò)添加一個(gè)到/web/mysql/bin/mysql_config這個(gè)程序的連接解決問(wèn)題
系統(tǒng)會(huì)自動(dòng)尋找這個(gè)命令生成安裝所需要的數(shù)據(jù)庫(kù)參數(shù)
# ln -s /web/mysql/bin/mysql_config /sbin/mysql_config
# perl Makefile.PL
# make
# make instll (這里make test我總是運(yùn)行一半就出錯(cuò),但是安裝后是可以運(yùn)行mysql目錄下的測(cè)試腳本,不知道3.x的mysql如何)
現(xiàn)在你可以運(yùn)行測(cè)試腳本了,不過(guò)速度很慢,掛在后臺(tái)好了
# perl /web/mysql/sql-bench/run-all-tests --user=root --password="youpassword"
附:
●mysql常見(jiàn)的一些有用的選項(xiàng)和命令
mysqld -----開(kāi)啟日志支持
--log
--log-update
--log-long-formart
●mysql
grant all on database.* to user identified by "password" 新建一user用戶,賦予其database數(shù)據(jù)庫(kù)的所有權(quán)限
revoke all on database from user 移除user用戶在database數(shù)據(jù)庫(kù)上的所有權(quán)限
mysql -uroot -p --one-database databasename < file.sql 從file.sql文件導(dǎo)入sql語(yǔ)句到databasename這個(gè)數(shù)據(jù)庫(kù)里
●mysqladmin
mysqladmin flush-logs 命令mysqld重新打開(kāi)一個(gè)新的日志文件,就是清空老日志文件,相當(dāng)于輪回了
●mysqldump
--add-drop-table 導(dǎo)出sql語(yǔ)句時(shí)添加droptable if exists語(yǔ)句
--quick 快速導(dǎo)出
--opt 優(yōu)化選項(xiàng)(推薦)
●myisamchk
檢查表選項(xiàng)
--extend-check 擴(kuò)展檢查
--medium-check 速度比較折中的一個(gè)檢查選項(xiàng)
修復(fù)表選項(xiàng)
--recover 修復(fù)表文件
--safe-recover 安全修復(fù)表文件,比--recover要慢
修飾修復(fù)表項(xiàng)
--force 強(qiáng)制清除上次的臨時(shí)文件
--quick 只根據(jù)素引文件的內(nèi)容進(jìn)行修復(fù)
●mysql的管理
可以使用phpmyadmin(需要php的環(huán)境支持)和mysqlcc(linux圖形界面支持,WINDOWS系統(tǒng)支持)
關(guān)鍵字:文件、環(huán)境、系統(tǒng)、圖形界面
新文章:
- CentOS7下圖形配置網(wǎng)絡(luò)的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS單網(wǎng)卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗(yàn)證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網(wǎng)打印機(jī)IP講解
- CentOS7使用hostapd實(shí)現(xiàn)無(wú)AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網(wǎng)絡(luò)重啟出錯(cuò)
- 解決Centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統(tǒng)有什么不同呢
- Centos 6.6默認(rèn)iptable規(guī)則詳解