Linux下安裝mysql(yum和源碼編譯兩種方式)


  這里介紹Linux下兩種安裝mysql的方式:yum安裝和源碼編譯安裝。

1. yum安裝

(1)首先查看centos自帶的mysql是否被安裝:

# yum list installed |grep mysql  

//若有自帶安裝的mysql,將其卸載
# yum -y remove mysql-libs.x86_64

(2)下載MySQL官網的yum倉庫:https://dev.mysql.com/downloads/repo/yum/,

# yum localinstall mysql57-community-release-el6-11.noarch.rpm
//查看yum倉庫是否成功添加
# yum repolist enabled |grep "mysql.*-community.*"

(3)使用mysql yum倉庫時,默認情況下選擇的最新版本進行安裝,也可以通過手動編輯文件來選擇一個版本安裝。例如,要安裝mysql5.6版本,則再mysql56-community設置enabled=1,mysql57-community設置enabled=0。

# vim /etc/yum.repos.d/mysql-community.repo

[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
# Enable to use MySQL 5.6
[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

(4)安裝mysql

# yum install mysql-community-server

(5)啟動mysql服務

# service mysqld start

若出現下面輸出則表示mysql安裝成功:

Starting mysqld:[ OK ]

2. 源碼編譯安裝mysql

(1)首先安裝源碼編譯所需要的包

# yum -y install make gcc-c++ cmake bison-devel  ncurses-devel

(2)下載並解壓安裝包

# wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.14.tar.gz
# tar xvf mysql-5.6.14.tar.gz

(3)編譯安裝(編譯參數按實際情況制定)

# cd mysql-5.6.14
# cmake .

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci

# make && make install

(4)配置mysql

  設置權限:

# useradd mysql
# passwd mysql 
# chown -R mysql:mysql /usr/local/mysql

  初始化mysql:

# cd /usr/local/mysql
# scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql

注意:在/etc目錄下會存在一個my.cnf,需要將此文件更名為其他的名字,如:/etc/my.cnf.bak,否則,該文件會干擾源碼安裝的MySQL的正確配置,造成無法啟動。

(5)注冊為服務

# cd /usr/local/mysql/support-files

//注冊服務 # cp mysql.server /etc/rc.d/init.d/mysql
//使用默認配置文件 # cp my-default.cnf /etc/my.cnf

//
設置開機啟動 # chkconfig mysql on

(6)啟動服務

# service mysql start 

3. mysql客戶端

  首次進入mysql客戶端時,通常會出現這種錯誤:

  解決方案如下:

(1)在/etc/my.cnf文件中添加如下命令:

(2)重啟mysql服務之后,進入mysql客戶端修改root用戶的密碼:

> update mysql.user set authentication_string=password("PASSWORD") where user="root";
> flush privileges;

(3)將剛剛添加的那條命令注釋掉,在mysql客戶端重設密碼:

//設置密碼強度和長度
> set global validate_password_policy=0;
> set global validate_password_length=1;
// 更改密碼
> alter user 'root'@'localhost' identified by 'PASSWORD';

(4)若設置root用戶可以遠程訪問,還需執行:

> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;
> flush privileges;

  隨后就可以通過mysql客戶端創建數據庫、表這些了。

 

參考文獻:

[1] https://dev.mysql.com/doc/mysql-repo-excerpt/5.6/en/linux-installation-yum-repo.html

[2] http://www.cnblogs.com/xiongpq/p/3384681.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM