標籤:mysql的編譯 mysql常用命令
環境win7下VMware12Pro,虛擬機器centos6.5mini
網路介面卡“橋接模式”
繼續上一次的Apache編譯後,編譯安裝MySQL5.6
MySQL5.6和以前的版本不同之處在於用cmake就行編譯,先安裝cmake
#yum install cmake -y
1、開始下載編譯MySQL5.6,推薦鏡像網站http://mirrors.sohu.com
#wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35.tar.gz
#tar xf mysql-5.6.35.tar.gz
#cd mysql-5.6.35.tar.gz
yum install ncurses-devel -y //編譯時間會提示依賴ncurses-devel,刪除解壓檔案夾,重新解壓,重新編譯
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
多次在centos6.5mini環境編譯嘗試,多次出錯,所以把mysql.sock,檔案編譯到預設目錄/tmp/mysql.sock
cmake命令執行結束後,執行命令echo $? 如果返回0,則執行make && make install
這個編譯時間較長,我的在27分鐘,如果你的配置足夠好,時間更少
2、對MySQL進行簡單的配置
首先建立mysql使用者和組,注意mysql使用者不允許登入系統,也沒有必要建立家目錄!
groupadd mysql
useradd -M -s /sbin/nologin -g mysql mysql
設定MySQL安裝目錄的屬主和屬組
chown -R mysql:mysql /usr/local/mysql
給資料庫data目錄可讀寫的許可權
chmod 777 -R /usr/local/mysql/data
複製設定檔和服務控制指令碼到相應位置
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
編輯設定檔/etc/my.cnf,添加:
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
其他參數預設就好。
下面就行初始化資料庫
cd /usr/local/mysql
scripts/mysql_install_db --user=mysql
再執行echo $? 返回的狀態代碼是0,則資料庫初始化成功
就可以啟動mysql資料庫服務了,啟動命令是mysqld
service mysqld start
出現大寫的“SUCCESS”就代表啟動成功了,
mysql伺服器預設密碼為空白,
執行/usr/local/mysql/bin/mysql 就可以登入資料庫了(預設root使用者,是mysql的root,不是系統root)
進入MySQL提示符為“mysql>”
show databases; ##命令輸入正確後,記得“;”
use mysql;
select host, user, password from mysql.user;
退出mysql:“\q”或“exit”
還記得Apache嗎?對,要把MySQL的bin添加到系統內容變數中
echo ‘export PATH=$PATH:/usr/local/mysql/bin‘ > /etc/profile.d/mysql.sh
chmod +x /etc/profile.d/mysql.sh
source /etc/profile.d/mysql.sh
退出linux系統,再登入讓系統重新讀取設定檔,然後就可以直接執行mysql,不用寫冗長的路徑了!
輸入mysql開啟mysql 用戶端
>show database;
>use mysql; ##你所有的MySQL使用者和密碼等資訊都儲存在此資料庫的user表
>select user, host, password from mysql.user; ##mysql使用者名稱認證是基於user和host
>update user set password=password(‘你的密碼‘) where user=‘root‘ and host=‘127.0.0.1‘;
>flush privileges; ##更新記憶體資料
>set password for ‘root‘@‘localhost‘=password(‘你的密碼‘);
>flush privileges;
幾個MySQL常用的語句:
>create database testdb;
>use testdb;
>create table mytest ( id int(6) unsigned not null auto_increment, name varchar(40), age int(2), college varchar(36), habit blob, primary key(id));
>desc mytest;
>insert into mytest (name, age,college,habit) value (‘channel‘, 32,‘信陽農院‘,‘English,boxing‘);
>select * from mytest;
>update mytest set age=26 where name=‘channel‘;
>select * from mytest;
>grant all privileges on testdb.* to [email protected]‘‘ identified by ‘12345‘;
>flush privileges;
不足之處,批評指正
centos下編譯安裝MySQL5.6