這里介紹Linux下兩種安裝mysql的方式:yum安裝和源碼編譯安裝。
1. yum安裝
(1)首先查看centos自帶的mysql是否被安裝:
1
2
3
|
# yum list installed |grep mysql // 若有自帶安裝的mysql,將其卸載 # yum -y remove mysql-libs.x86_64 |
(2)下載MySQL官網的yum倉庫:https://dev.mysql.com/downloads/repo/yum/,
1
2
3
|
# 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。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
# 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
1
|
# yum install mysql-community-server |
(5)啟動mysql服務
1
|
# service mysqld start |
若出現下面輸出則表示mysql安裝成功:
1
|
Starting mysqld:[ OK ] |
2. 源碼編譯安裝mysql
(1)首先安裝源碼編譯所需要的包
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)編譯安裝(編譯參數按實際情況制定)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
# 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
設置權限:
1
2
3
|
# useradd mysql # passwd mysql # chown -R mysql:mysql /usr/local/mysql |
初始化mysql:
1
2
|
# 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)注冊為服務
1
2
3
4
5
6
7
|
# 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)啟動服務
1
|
# service mysql start |
3. mysql客戶端
首次進入mysql客戶端時,通常會出現這種錯誤:
解決方案如下:
(1)在/etc/my.cnf文件中添加如下命令:
(2)重啟mysql服務之后,進入mysql客戶端修改root用戶的密碼:
1
2
|
update mysql.user set authentication_string=password( "PASSWORD" ) where user= "root" ; flush privileges; |
(3)將剛剛添加的那條命令注釋掉,在mysql客戶端重設密碼:
1
2
3
4
5
|
// 設置密碼強度和長度 > set global validate_password_policy=0; > set global validate_password_length=1; // 更改密碼 > alter user 'root' @ 'localhost' identified by 'PASSWORD' ; |
(4)若設置root用戶可以遠程訪問,還需執行:
1
2
|
> GRANT ALL PRIVILEGES ON *.* TO 'root' @ '%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION; > flush privileges; |
隨后就可以通過mysql客戶端創建數據庫、表這些了。
原文鏈接:https://www.cnblogs.com/qiuyuesu/archive/2018/02/02/8404243.html