本文目錄一覽:
- 1、mysql為什麼要用cmake編譯
- 2、cmake安裝mysql編譯提示錯誤,錯誤提示如下,請大家指教,謝謝!
- 3、怎麼查mysql5.5,用cmake安裝時的編譯參數
- 4、linux 如何編譯安裝mysql?
- 5、cmake怎樣編譯安裝mysql
- 6、如何安裝mysql
mysql為什麼要用cmake編譯
設置LINUX自動匹配環境變數
1.$su #su進入root
#vi /etc/profile
在文件末尾加上下列語句:
PATH=$PATH:/sbin #在PATH變數後追加/sbin目錄
export PATH=$PATH:/sbin #設置變數為全局的
保存並退出。
退出root並在終端運行
$source /etc/profile #該命令的作用是重新執行剛修改的初始化文件,使之立即生效,而不必註銷並重新登好了在終端中輸入ifconfig 創建用戶和組
groupadd mysql // 建一個msyql的用戶和組
useradd -g mysql mysql -s /usr/sbin/nologin
mkdir /usr/local/mysql // 創建目錄
mkdir /usr/local/mysql/data // 數據倉庫目錄
安裝mysql
tar -zxvf mysql-5.5.14.tar.gz
cd mysql-5.5.14
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
PS: cmake的時候,參數可以不用那麼多,只要一個-DCMAKE_INSTALL_PREFIX=/usr/local/mysql就行了,我們可以在 my.cnf裡面配置。[mysqld]中的內容,看看你copy後的my.cnf有沒有這些設置,有就不用了在設置了。
make make install
如果需要更改配置,則:
make clean
rm -f CMakeCache.txt
複製配置文件
cp support-files/my-medium.cnf /usr/local/mysql/my.cnf
設置許可權
chmod +x /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql
配置開機自啟動
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
chkconfig –list
//update-rc.d mysql defaults (/sbin/chkconfig –add mysql ; /sbin/chkconfig mysql on)
chkconfig –add mysql
chkconfig mysql on
chkconfig –list mysql
修改my.cnf配置
gedit /usr/local/mysql/my.cnf
[mysqld] 添加:
datadir=/usr/local/mysql/data
default-storage-engine=MyISAM
以下可選:
log-error = /usr/local/mysql/mysql_error.log
pid-file = /usr/local/mysql/mysql.pid
user = mysql
tmpdir = /tmp
安裝默認數據表
/usr/local/mysql/scripts/mysql_install_db –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data –user=mysql
啟動MySQL
/usr/local/mysql/bin/mysqld_safe –defaults-file=/usr/local/mysql/my.cnf
最後的「」表示在後台運行,或者使用 /etc/init.d/mysql start (service mysql start)啟動
設置MYSQL命令行路徑
mysql命令的路徑在/usr/local/mysql/bin下面,所以你直接使用mysql命令時,系統在/usr/bin下面查此命令
解決辦法是: ln -s /usr/local/mysql/bin/mysql /usr/bin
測試MySQL是否啟動
1)查看是否有進程mysql
ps -ef | grep mysql
2)查看埠是否運行
netstat -tnl | grep 3306
3)讀取mysql版本信息
/usr/local/mysql/bin/mysqladmin version
至此,MySQL安裝完成。
三、錯誤解決
1.libstdc++.so依賴問題:使用命令yum install gcc
cmake安裝mysql編譯提示錯誤,錯誤提示如下,請大家指教,謝謝!
錯誤提示里說你的計算機上沒有一個可用的Boost庫或版本太低,MySQL需要不低於Boost 1.57.0的版本。您應該嘗試下載一個Boost,並且完成編譯。
您應該會得到上面圖片中的大部分文件,除了幾個我自己添加的輔助編譯的腳本。
完成之後請再嘗試重新編譯MySQL。
附註:編譯後生成的二進位庫保存在Boost根目錄下\stage\lib中,請根據MySQL的編譯步驟中的指示填寫在Makefile裡面或者加入環境變數(具體的我不太清楚,需要您視具體情況而定)。
怎麼查mysql5.5,用cmake安裝時的編譯參數
# cd /usr/local/mysql5.5/docs
# vim INFO_BIN (其中 Pointer size: 4 一行之後的內容就是所要的參數,需要注意的是,這裡的參數的書寫格式並不是在執行 cmake 命令時參數的標準格式 ,使用的時候要去掉 :BOOL或 PATH: 等字元)
===== Information about the build process: =====
Build was run at 2014-09-13 23:14:29 on host ‘rhel5-8-1.breeze.com’
Build was done on Linux-2.6.18-308.el5 using i686
Build was done using cmake 3.0.2
===== Compiler flags used (from the ‘sql/’ subdirectory): =====
# compile C with /usr/bin/cc
# compile CXX with /usr/bin/c++
C_DEFINES = -DHAVE_CONFIG_H -DHAVE_EVENT_SCHEDULER -DMYSQL_SERVER
CXX_DEFINES = -DHAVE_CONFIG_H -DHAVE_EVENT_SCHEDULER -DMYSQL_SERVER
Pointer size: 4
===== Feature flags used: =====
— Cache values
CMAKE_BUILD_TYPE:STRING=RelWithDebInfo
CMAKE_INSTALL_PREFIX:PATH=/usr/local/mysql5.5
COMMUNITY_BUILD:BOOL=ON
linux 如何編譯安裝mysql?
使用binary進行安裝,文件名mysql-standard-5.0.18-linux-i686-glibc23.tar.gz
[1]將上述文件解壓到某處,並將MySQL所以目錄名改為mysql,結果應如/home/xxx/mysql
[2]根據mysql目錄下的INSTALL-BINARY文件來進行安裝
// 加用戶組mysql,以及用戶mysql;該命令無需修改
shell groupadd mysql
shell useradd -g mysql mysql
// 以下三步的主要目的是為MySQL解壓目錄做一個鏈接,放到usr/local目錄中
// 首先是進入/usr/local目錄;該命令無需修改
shell cd /usr/local
// 這一步可以不需要,因為已經解壓了
shell gunzip /PATH/TO/MYSQL-VERSION-OS.tar.gz | tar xvf –
// 做一個到/home/xxx/mysql的鏈接,放在/usr/local中,該鏈接的名字是mysql。
// 該命令修改為ln -s /home/xxx/mysql mysql
shell
ln -s FULL-PATH-TO-MYSQL-VERSION-OS mysql
// 進入/home/xxx/mysql目錄,/usr/local/mysql是到/home/xxx/mysql的鏈接
shell
cd mysql
// 對MySQL進行初始化(如果以前已經安裝過MySQL,這一步可以簡略);該命令無需修改
shell scripts/mysql_install_db –user=mysql
// 變更所有權;該命令無需修改
shell chown -R root .
shell chown -R mysql data
shell chgrp -R mysql .
// 啟動MySQL伺服器;該命令無需要修改
shell bin/mysqld_safe –user=mysql
[3]進入MySQL應用環境
進入mysql目錄下的bin目錄,運行命令./mysql -u root
-p,此時將出現password:(要求輸入密碼),但默認情況下root用戶沒有密碼,所以回車即可。此時將進入MySQL界面,當然仍然只是個命令行窗口而以。
[4]簡單使用MySQL
在MySQL環境中運行命令show databases;,將會顯示已經有的資料庫(如test);運行命令use test,將進入test資料庫…
注意:如果在運行./mysql -u root -p之後,報
Can’t connect to local MySQL server through socket ‘/tem/mysql.sock’
的錯誤,那麼可能有以下幾種情況:
[1]mysql.sock並不在/tmp目錄下,而是在其它某個目錄下(如,/var/lib/mysql目錄)。這時只需要將這個mysql.sock做鏈接到/tmp目錄下,運行命令:
ln -s MYSQL.SOCK_PATH /tmp/mysql.sock
[2]在同學的筆記本的Linux中,會在/tmp下生成mysql.sock,但重新啟動Linux後,該文件被刪除。這時也可以用情況2中的解決方法,或者每次都運行命令:./mysqld_safe –user=mysql
cmake怎樣編譯安裝mysql
不同linux版本,安裝不同版本的mysql方法各不相同,下面以CentOS 6.5編譯安裝MySQL 5.6.16介紹:
一.準備工作
1.yum安裝各個依賴包
[root@WebServer ~]# yum -y install gcc gcc-devel gcc-c++ gcc-c++-devel autoconf* automake* zlib* libxml* ncurses-devel ncurses libgcrypt* libtool* cmake openssl openssl-devel bison bison-devel unzip
2.新建mysql組和用戶
[root@WebServer ~]# groupadd mysql
[root@WebServer ~]# useradd -g mysql -s /sbin/nologin mysql
3.目錄準備
[root@WebServer ~]# mkdir -p /webserver/mysql/etc
[root@WebServer ~]# mkdir -p /webserver/mysql/data
[root@WebServer ~]# mkdir -p /webserver/mysql/tmp
[root@WebServer ~]# chown -R mysql.mysql /webserver/mysql
4.解壓MySQL並進入安裝目錄
[root@WebServer ~]# tar zxvf mysql-5.6.16.tar.gz
[root@WebServer ~]# cd mysql-5.6.16
二.編譯並安裝
1.編譯MySQL
[root@WebServer mysql-5.6.16]# cmake -DCMAKE_INSTALL_PREFIX=/webserver/mysql \
-DSYSCONFDIR=/webserver/mysql/etc \
-DMYSQL_DATADIR=/webserver/mysql/data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/webserver/mysql/tmp/mysqld.sock \
-DMYSQL_USER=mysql \
-DEXTRA_CHARSETS=all \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DENABLE_DOWNLOADS=1
2.如果出現以下錯誤
如何安裝mysql
給你個鏈接,我第一次就是照這個安裝的,講的比較通俗易懂
用過MySQL之後,不論容量的話,發現比其他兩個(sql server 、oracle)好用的多,一下子就喜歡上了。下面給那些還不知道怎麼弄的童鞋們寫下具體的方法步驟。
(我這個寫得有點太詳細了,甚至有些繁瑣,有很多步驟在其他的教程文檔里都是省略掉的,但我還是要寫出來,因為我當時走了很多彎路,我希望你們能夠避免我走的這些彎路。當然,知道同學的可以略過,選擇你想知道的地方看)
工具/原料
• 電腦 win7 64bit
方法/步驟
1
第一大步:下載。
a.俗話說:「巧婦難為無米之炊」嘛!我這裡用的是 ZIP Archive 版的,win7 64位的機器支持這個,所以我建議都用這個。因為這個簡單嘛,而且還乾淨。
地址見圖:
拉倒最下面,看清楚了64bit ZIP Archive ,點擊Download。
2
b.點開之後會進入另一個頁面,但卻沒有開始下載,這個時候不用怕,看不懂沒關係,你只要知道他是要讓你們登錄(login),或者 申請賬號(sign up)個就行了,登錄或者申請成功後就會開始下載。(記住密碼要字母和數字組合,字母要有大寫)
c.注意:密碼要字母和數字組合,字母要有大寫字母
4
d.當然你如果有賬戶的話,也可以直接登錄進去
5
成功後點擊DownNow。文件不大,才200多M,很快的,稍等一下(成功後按理說也是到達下面這個地方的,但假如不知這樣的話,你自己找一下,或者直接退出來,重複以上步驟,選登錄那個就是了。
6
在多說一句,MySQL 是開源(open source)資料庫,所謂開源就是可以查看源代碼的,我相信很多童靴都會對這個感興趣。那麼在哪下源代碼呢?
在剛進-(第一個圖片那地址)的時候。有一個Select Platform,選擇下面的source code就行。
(同理如果要下載linux平台下的MySQL也是在這找)
下載完畢,下面開始著手安裝和配置
7
第二大步:安裝(解壓)
ZIP Archive版是免安裝的。只要解壓就行了。和安裝版的沒什麼不同,但就是不需要安裝。找到下載好的mysql-x.x.xx-winx64.zip右鍵選擇(解壓到…),找到你想安裝的地方,喜歡放C:盤的就選擇C:盤,不喜歡的就自己選個就是了,小編喜歡放D:盤,畢竟c:系統盤放的東西太多不好。解壓完就ok了,是不是很簡單?知道 ZIP Archive版的好處了吧
8
你是不是要問了?怎麼用啊?\bin點裡面的mysql。exe怎麼出來一個黑窗口就沒反應了?
沒反應是因為服務還沒開!
沒開,是不是打開就好了?
服務還沒安裝!
怎麼安裝?
下面講!
9
第三大步:配置默認文件
其實理論上現在這樣就可以直接安裝服務了,但是因為是默認配置,我們使用的時候會出現很多問題。比如裡面的漢字全是亂碼之類的,所以建議你先配置一下默認文件。在mysql-x.x.xx-winx64(小編的是5.6.17根據自己的版本來定)目錄下,新建個my.ini。複製下面的代碼保存就ok了。my.ini會替換掉下面的my-default.ini文件。.ini文件是window裡面的配置文件。保存裡面各種默認的數據。安裝版的是在安裝的時候讓你自己選然後系統給你保存進來,zip archive是自己寫,都一樣。裡面的代碼語法是什麼意思童鞋們自己查相關資料吧。畢竟我一兩句話說不清。這個文件在軟體運行時載入。
10
代碼:(把裡面D:\mysql\mysql-5.6.17-winx64改成你自己的軟體路徑,保存)
[mysql]
# 設置mysql客戶端默認字符集
default-character-set=utf8
[mysqld]
#設置3306埠
port = 3306
# 設置mysql的安裝目錄
basedir=D:\mysql\mysql-5.6.17-winx64
# 設置mysql資料庫的數據的存放目錄
datadir=D:\mysql\mysql-5.6.17-winx64\data
# 允許最大連接數
max_connections=200
# 服務端使用的字符集默認為8比特編碼的latin1字符集
character-set-server=utf8
# 創建新表時將使用的默認存儲引擎
default-storage-engine=INNODB
11
第四大步:安裝mysql服務
a開始-在面的搜索欄裡面輸入cmd,上面會出來一個cmd.exe,別忙著點確定,要右鍵這個cmd.exe選擇一管理員的身份運行這個選項。不然會出現一個身份不夠的錯誤碼,具體數忘了。這是win7的一個特點。知道就行了。若是my.ini寫錯的話,錯誤碼是1067.
(你也可以在C:\Windows\System32目錄下找到這個cmd.exe,同樣右鍵它,以管理員身份確定。)
12
以管理員身份打開cmd窗口後,將目錄切換到你解壓文件的bin目錄,我的目錄是圖裡面那個,你的話,要以你自己的目錄為準。再輸入mysqld install回車運行就行了,注意是是mysqld,不是mysql
出現安裝成功就ok了。我由於已經安裝了,所以結果就是這個了。
接著就是在輸入 net start mysql 啟動服務。或者不嫌麻煩就手動,打開服務手動啟動了mysql服務了。
13
告訴大家一個win7打開服務界面的簡單方法。打開任務管理器(右鍵選擇任務管理器也好,ctrl+alt+delete也罷,隨你喜好)。點下面的服務就ok了,是不是很簡單,比控制面板那個方法簡單多了吧。當然你也可以在cmd窗口裡面輸入services.msc也是可以的。
14
第五大步:打開MySQL
還是將目錄切換到D:\mysql\mysql-x.x.xx-winx64\bin(x.xx.xxx是什麼根據你自己的版本來吧)輸入mysql -uroot -p ,默認是沒有密碼的。回車進入,當然我的已經設置密碼了,所以要輸入密碼才能進。有密碼的話,可以mysql -uroot -p密碼,也是可以是mysql -uroot -p 回車輸入密碼,推薦第二種,原因,你動手之後就知道了。
設置密碼的方法:mysqladmin -u root -p password 密碼。
退出exit 就行了。記住直接關閉cmd窗口是沒有退出的,要輸入exit才會退出啊。
15
雖然打開mysql 了,但每次打開mysql 都要輸入那麼多指令切換目錄是不是很討厭?怎麼弄呢?會的當然不用我說了,不會的也不用急,我來告訴你們。
右鍵我的電腦-屬性-高級系統設置-環境變數-path-編輯,將你的mysql軟體下的bin目錄的全路徑放裡面。我建議童鞋們放在最前面,最後在那個目錄的路徑後面加個英文的分號(;)保存就行了。如D:\mysql\mysql-x.x.xx-winx64\bin;
為啥這樣弄呢?原理是個啥?簡單的說環境變數裡面的path路徑這東西,就是cmd系統的查找目錄路徑。你輸入一個指令,系統怎麼知道這個指令有沒有呢?系統做了什麼事?其實系統是在當前目錄和系統環境變數path裡面的路徑全部查找一邊,找到第一個為準,找不到就報錯。所以我們要不每次都切換cmd目錄,要不就設置了,以後就不需要再切換cmd路徑了。
打個比方:系統就像一輛公交車。按著既定的路線走。環境變數裡面的路徑就是那個路線或者說是各個站。到了站(找到第一個)就下車(運行)。
16
現在配好了環境變數,讓我們在來運行一下吧!
cmd-mysql -uroot -p -回車輸入密碼-show databases;查找資料庫-use 資料庫名;切換資料庫目錄-show tables;查找表-sql查詢工作select * from 表名-exit退出。
其他的指令都輸資料庫操作方面的事了,小編就不贅述了,你們可以找一些相關的書。
17
小編是比較喜歡使用cmd窗口來操作mysql的,你用習慣了之後發現他是如此的方便快捷。比那什麼圖形化界面好用多了,而且你給mysql安個圖形化界面就失去了他相比其他兩個資料庫的好的那些意義。小編強烈不推薦大家使用圖形化界面操作mysql資料庫。但你真要用我也沒辦法。給你們推薦幾個圖形化的管理工具:
1、phpMyAdmin
2、MySQLDumper
3、Navicat
4、MySQL GUI Tools
5、MySQL ODBC Connector
這些工具怎麼安裝我相信網上還是會有很多像我這樣教程的,大家可以找下看看。
18
附加步步驟:為你的mysql瘦身
有沒有沒發現一個問題,你下載mysql壓縮包的時候只有200M多一點,可解壓只有竟然達到竟然的1G多,右鍵你的mysql-x.x.xx-winx64目錄,選擇屬性來看看他的大小吧!為什麼會這樣呢,其實還是那個問題,mysql是開源的資料庫,裡面的源文件和debug等文件都沒有刪掉,這些文件其實沒有什麼用的,都刪掉就是了。刪掉dubug文件和.pdf文件。當然不止這一個目錄裡面有,自己找一下,但別刪錯了。刪了之後是不是發現小了特別多!
END
注意事項
• 裡面有沒提到的錯誤,你們可以把錯誤碼複製下來百度一下,我相信你們能遇到的錯誤別人也能遇到。
• 遇到問題要有耐心,問題解決了就是一個大的進步。不要怕遇到問題。你現在每遇到一個問題,在以後就是你所擁有的財富。
• 感謝大家不厭其煩的看我啰嗦這麼多。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/230504.html