- 1、linux怎麼安裝mysql5.5.11
- 2、如何在linux下安裝mysql
- 3、linux上怎麼安裝mysql
- 4、linux上如何安裝mysql5.5
一、準備環境
1.建立mysql安裝目錄及數據存放目錄
[root@localhost local]# mkdir -p /usr/local/mysql //安裝mysql
[root@localhost local]# mkdir -p /usr/local/mysql/data //存放資料庫
2.創建myql用戶和用戶組
[root@localhost local]# groupadd mysql
[root@localhost local]# useradd -g mysql mysql
3.賦予數據存放目錄許可權
[# chown -R root:mysql . //把當前目錄中所有文件的所有者設為root,所屬組為mysql]
[root@localhost local]# chown mysql:mysql -R /usr/local/mysql/data
4.安裝cmake[mysql5.5以後是通過cmake來編譯的]
可以在網站下載cmake-2.8.4.tar.gz,上傳並移動至/usr/local目錄下
[root@localhost local]# tar zxvf cmake-2.8.4.tar.gz
[root@localhost local]# cd cmake-2.8.4
[root@localhost cmake-2.8.4]# ./configure –prefix=/usr/local/cmake
CMake has bootstrapped. Now run gmake.
[root@localhost cmake-2.8.4]# gmake
[root@localhost cmake-2.8.4]# gmake install
[root@localhost cmake-2.8.4]# ln -s /usr/local/cmake/bin/cmake /usr/local/bin/cmake
[root@localhost cmake-2.8.4]# cmake –version
cmake version 2.8.4
二、安裝mysql
1.在mysql的網站下載mysql最新版本.地址是:
上傳並移動至/usr/local/mysql目錄下
2.解壓mysql-5.5.20
[root@localhost local]#tar zxvf mysql-5.5.20.tar.gz
[root@localhost local]# cd mysql-5.5.20
[root@localhost mysql-5.5.20]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1
[root@localhost mysql-5.5.20]# make
[root@localhost mysql-5.5.20]# make instll
參數說明:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安裝目錄
-DINSTALL_DATADIR=/usr/local/mysql/data //資料庫存放目錄
-DDEFAULT_CHARSET=utf8 //使用utf8字元
-DDEFAULT_COLLATION=utf8_general_ci //校驗字元
-DEXTRA_CHARSETS=all //安裝所有擴展字符集
-DENABLED_LOCAL_INFILE=1 //允許從本地導入數據
注意事項:
重新編譯時,需要清除舊的對象文件和緩存信息。
[root@localhost mysql-5.5.20]# make clean
[root@localhost mysql-5.5.20]# rm -f CMakeCache.txt
[root@localhost mysql-5.5.20]# rm -rf /etc/my.cnf
4.把mysql的啟動服務設置為系統服務
[root@localhost mysql-5.5.20]# cp support-files/my-medium.cnf /etc/my.cnf
5.初始化資料庫
#cd /user/local/mysql
# scripts/mysql_install_db –user=mysql –basedir=/usr/local/mysql/ –datadir=/usr/local/mysql/data
註:basedir:mysql安裝路徑 datadir:資料庫文件儲存路徑
6.設置開機自啟動
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql
# chmod 755 /etc/init.d/mysql
# chkconfig mysql on
7.配置環境變數
將mysql的bin目錄加到PATH中,有利於以後管理與維護,在/etc/profile中加入mysql/bin,同時增加兩個別名方便操作:
# export PATH=/usr/local/mysql/bin:$PATH
# alias mysql_start=”mysqld_safe”
# alias mysql_stop=”mysqladmin -u root -p shutdown”
8.啟動mysql服務
# /etc/init.d/mysql start
啟動之後用ps -ef|grep mysql命令查看是否啟動
9.登錄mysql
# mysql -u root -p
三、安裝遇到的問題
1.沒有安裝 gcc 和 gcc-c++,安裝MYSQL執行cmake報如下錯誤:
[root@ice mysql-5.5.27]# cmake .
— The C compiler identification is unknown
— The CXX compiler identification is unknown
CMake Error: your C compiler: “CMAKE_C_COMPILER-NOTFOUND” was not found. Please set CMAKE_C_COMPILER to a valid compiler path or name.
CMake Error: your CXX compiler: “CMAKE_CXX_COMPILER-NOTFOUND” was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name.
.
— Configuring incomplete, errors occurred!
==================================================
解決方法:安裝gcc和gcc-c++
[root@localhost mysql-5.5.20]yum install gcc
[root@localhost mysql-5.5.20]yum install gcc-c++
#刪除cache文件,不刪除還會報錯
[root@localhost mysql-5.5.20]rm CMakeCache.txt
[root@localhost mysql-5.5.20]#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data-DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1
2.沒有安裝 ncurses-devel,安裝MYSQL執行cmake報如下錯誤:
— Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
CMake Error at cmake/readline.cmake:83 (MESSAGE):
Curses library not found. Please install appropriate package,
remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
Call Stack (most recent call first):
cmake/readline.cmake:127 (FIND_CURSES)
cmake/readline.cmake:217 (MYSQL_USE_BUNDLED_LIBEDIT)
CMakeLists.txt:257 (MYSQL_CHECK_READLINE)
— Configuring incomplete, errors occurred!
解決方法:
[root@localhost mysql-5.5.20]#yum -y install ncurses-devel
[root@localhost mysql-5.5.20]#rm CMakeCache.txt
[root@localhost mysql-5.5.20]#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data-DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1
3.bash:mysql:command not find
原因是mysql命令的路徑在/usr/local/mysql/bin下面,所以你直接使用mysql命令時,系統在/usr/bin下面查此命令,所以找不到了。
解決方法:做個軟鏈接即可。
# ln -s /usr/local/mysql/bin/mysql /usr/bin
4.如果myql不能遠程連接,出現錯誤mysql error number 1130,則加入下面語句試試:
mysqlGRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘******’ WITH GRANT OPTION;
5.[root@localhost mysql]# /etc/init.d/mysql status
ERROR! MySQL is not running, but lock file (/var/lock/subsys/mysql) exists
解決方法:rm -rf /var/lock/subsys/mysql
然後啟動mysql,一切正常了,這裡的可能原因就是可能和log文件有關,於是將log文件給移除了,再重啟MySQL終於OK了。
6.[root@localhost init.d]# /etc/init.d/mysql start
第一步:安裝:
tarmysql-5.5.48-linux2.-x86_64.tar.gz
Copy到指定的路徑下:
cpmysql-5.5.48-linux2.6-x86_64 /usr/local/mysql -r
添加系統mysql組合mysql用戶:
執行命令:groupaddmysql和useradd -r -g mysql mysql
安裝資料庫:
進入安裝mysql軟體目錄:執行命令 cd/usr/local/mysql
修改當前目錄擁有者為mysql用戶:執行命令chown -R mysql:mysql ./
安裝資料庫:執行命令./scripts/mysql_install_db –user=mysql
修改當前目錄擁有者為root用戶:執行命令chown -R root:root ./
修改當前data目錄擁有者為mysql用戶:執行命令chown -R mysql:mysql data
到此資料庫安裝完畢
啟動mysql服務和添加開機啟動mysql服務:
添加開機啟動:執行命令cpsupport-files/mysql.server /etc/init.d/mysql,把啟動腳本放到開機初始化目錄
啟動mysql服務:執行命令servicemysql start
1. 運行平台:CentOS 6.3 x86_64,基本等同於RHEL 6.3
2. 安裝方法:
安裝MySQL主要有兩種方法:一種是通過源碼自行編譯安裝,這種適合高級用戶定製MySQL的特性,這裡不做說明;另一種是通過編譯過的二進位文件進行安裝。二進位文件安裝的方法又分為兩種:一種是不針對特定平台的通用安裝方法,使用的二進位文件是後綴為.tar.gz的壓縮文件;第二種是使用RPM或其他包進行安裝,這種安裝進程會自動完成系統的相關配置,所以比較方便。
3. 下載安裝包:
2. 下載文件(根據操作系統選擇相應的發布版本):
a. 通用安裝方法
mysql-5.5.29-linux2.6-x86_64.tar.gz
b. RPM安裝方法:
MySQL-server-5.5.29-2.el6.x86_64.rpm
MySQL-client-5.5.29-2.el6.x86_64.rpm
4. 通用安裝步驟
a. 檢查是否已安裝,grep的-i選項表示匹配時忽略大小寫
[root@localhost JavaEE]#rpm -qa|grep -i mysql
mysql-libs-5.1.61-4.el6.x86_64
*可見已經安裝了庫文件,應該先卸載,不然會出現覆蓋錯誤。注意卸:載時使用了–nodeps選項,忽略了依賴關係:
[root@localhost JavaEE]#rpm -e mysql-libs-5.1.61-4.el6.x86_64 –nodeps
b. 添加mysql組和mysql用戶,用於設置mysql安裝目錄文件所有者和所屬組。
[root@localhost JavaEE]#groupadd mysql
[root@localhost JavaEE]#useradd -r -g mysql mysql
*useradd -r參數表示mysql用戶是系統用戶,不可用於登錄系統。
c. 將二進位文件解壓到指定的安裝目錄,我們這裡指定為/usr/local
[root@localhost ~]# cd/usr/local/
[root@localhost local]#tar zxvf /path/to/mysql-5.5.29-linux2.6-x86_64.tar.gz
*加壓後在/usr/local/生成了解壓後的文件夾mysql-5.5.29-linux2.6-x86_64,這名字太長,我們為它建立一個符號鏈接mysql,方便輸入。
[root@localhost local]#ln -s mysql-5.5.29-linux2.6-x86_64 mysql
d. /usr/local/mysql/下的目錄結構
Directory
Contents of Directory
bin
Client programs and the mysqld server
data
Log files, databases
docs
Manual in Info format
man
Unix manual pages
include
Include (header) files
lib
Libraries
scripts
mysql_install_db
share
Miscellaneous support files, including error messages, sample configuration files, SQL for database installation
sql-bench
Benchmarks
e. 進入mysql文件夾,也就是mysql所在的目錄,並更改所屬的組和用戶。
[root@localhost local]#cd mysql
[root@localhost mysql]#chown -R mysql .
[root@localhost mysql]#chgrp -R mysql .
f. 執行mysql_install_db腳本,對mysql中的data目錄進行初始化並創建一些系統表格。注意mysql服務進程mysqld運行時會訪問data目錄,所以必須由啟動mysqld進程的用戶(就是我們之前設置的mysql用戶)執行這個腳本,或者用root執行,但是加上參數–user=mysql。
[root@localhost mysql]scripts/mysql_install_db –user=mysql
*如果mysql的安裝目錄(解壓目錄)不是/usr/local/mysql,那麼還必須指定目錄參數,如
[root@localhost mysql]scripts/mysql_install_db –user=mysql \
–basedir=/opt/mysql/mysql \
–datadir=/opt/mysql/mysql/data
*將mysql/目錄下除了data/目錄的所有文件,改回root用戶所有,mysql用戶只需作為mysql/data/目錄下所有文件的所有者。
[root@localhost mysql]chown -R root .
[root@localhost mysql]chown -R mysql data
g. 複製配置文件
[root@localhost mysql] cp support-files/my-medium.cnf /etc/my.cnf
h. 將mysqld服務加入開機自啟動項。
*首先需要將scripts/mysql.server服務腳本複製到/etc/init.d/,並重命名為mysqld。
[root@localhostmysql] cp support-files/mysql.server /etc/init.d/mysqld
*通過chkconfig命令將mysqld服務加入到自啟動服務項中。
[root@localhost mysql]#chkconfig –add mysqld
*注意服務名稱mysqld就是我們將mysql.server複製到/etc/init.d/時重命名的名稱。
*查看是否添加成功
[root@localhost mysql]#chkconfig –list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
i. 重啟系統,mysqld就會自動啟動了。
*檢查是否啟動
[root@localhost mysql]#netstat -anp|grep mysqld
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2365/mysqld
unix 2 [ ACC ] STREAM LISTENING 14396 2365/mysqld /tmp/mysql.sock
*如果不想重新啟動,那可以直接手動啟動。
[root@localhost mysql]#service mysqld start
Starting MySQL.. SUCCESS!
j. 運行客戶端程序mysql,在mysql/bin目錄中,測試能否連接到mysqld。
[root@localhost mysql]#/usr/local/mysql/bin/mysql
Welcome to the MySQLmonitor. Commands end with ; or \g.
Your MySQL connection idis 2
Server version:5.5.29-log MySQL Community Server (GPL)
Copyright (c) 2000, 2012,Oracle and/or its affiliates. All rights reserved.
Oracle is a registeredtrademark of Oracle Corporation and/or its affiliates. Other names may betrademarks of their respective owners.
Type ‘help;’ or ‘\h’ forhelp. Type ‘\c’ to clear the current input statement.
mysql quit
Bye
*此時會出現mysql命令提示符,可以輸入sql語句,輸入quit或exit退出。為了避免每次都輸入mysql的全路徑/usr/local/mysql/bin/mysql,可將其加入環境變數中,在/etc/profile最後加入兩行命令:
MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin
這樣就可以在shell中直接輸入mysql命令來啟動客戶端程序了
[root@localhost mysql]#mysql
Welcome to the MySQLmonitor. Commands end with ; or \g.
Your MySQL connection idis 3
Server version:5.5.29-log MySQL Community Server (GPL)
Copyright (c) 2000, 2012,Oracle and/or its affiliates. All rights reserved.
Oracle is a registeredtrademark of Oracle Corporation and/or its
affiliates. Other namesmay be trademarks of their respective
owners.
Type ‘help;’ or ‘\h’ forhelp. Type ‘\c’ to clear the current input statement.
mysql
5. RPM安裝步驟
a. 檢查是否已安裝,grep的-i選項表示匹配時忽略大小寫
[root@localhost JavaEE]#rpm -qa|grep -i mysql
mysql-libs-5.1.61-4.el6.x86_64
可見已經安裝了庫文件,應該先卸載,不然會出現覆蓋錯誤。注意卸載時使用了–nodeps選項,忽略了依賴關係:
[root@localhost JavaEE]#rpm -e mysql-libs-5.1.61-4.el6.x86_64 –nodeps
2. 安裝MySQL的伺服器端軟體,注意切換到root用戶:
[root@localhost JavaEE]#rpm -ivh MySQL-server-5.5.29-2.el6.x86_64.rpm
安裝完成後,安裝進程會在Linux中添加一個mysql組,以及屬於mysql組的用戶mysql。可通過id命令查看:
[root@localhost JavaEE]#id mysql
uid=496(mysql)gid=493(mysql) groups=493(mysql)
MySQL伺服器安裝之後雖然配置了相關文件,但並沒有自動啟動mysqld服務,需自行啟動:
[root@localhost JavaEE]#service mysql start
Starting MySQL.. SUCCESS!
可通過檢查埠是否開啟來查看MySQL是否正常啟動:
[root@localhost JavaEE]#netstat -anp|grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 34693/mysqld
c. 安裝MySQL的客戶端軟體:
[root@localhost JavaEE]#rpm -ivh MySQL-client-5.5.29-2.el6.x86_64.rpm
如果安裝成功應該可以運行mysql命令,注意必須是mysqld服務以及開啟:
[root@localhost JavaEE]#mysql
Welcome to the MySQLmonitor. Commands end with ; or \g.
Your MySQL connection idis 1
Server version: 5.5.29MySQL Community Server (GPL)
Copyright (c) 2000, 2012,Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademarkof Oracle Corporation and/or its affiliates. Other names may be trademarks oftheir respective owners.
Type ‘help;’ or ‘\h’ forhelp. Type ‘\c’ to clear the current input statement.
mysql
如果是基於Redhat的版本可以以ROOT身份在命令行界面輸入:yum install mysql
如果是基於Debian的版本可以以ROOT身份在命令行界面輸入:apt-get install mysql
你可以提前更新YUM庫:yum update
並不定非要mysql5.5 如果你真要安裝這個版本就下載rpm包 然後 rpm -ivh mysql5.5.rpm 來安裝
原創文章,作者:UCNL5,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/126549.html