天天看點

Mysql資料庫的幾種安裝方法

作者:每天一點IT

Mysql是我們常用的一種開源關系性資料庫,據說,目前排名第二,僅次于Oracle,有各種版本,比如Windows版的、Linux版的,不過一般還是Linux版用的比較多。

可能平時沒人關注它的安裝方式,這裡,我們就來看看Linux下的Mysql有多少種安裝方式。

一、使用YUM指令線上安裝

1、下載下傳安裝yum倉庫

yum -y install https://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm

2、安裝

yum -y install mysql-community-server

3、啟動

systemctl start mysqld

4、檢視狀态

systemctl status mysqld

5、檢視初始密碼

grep 'temporary password' /var/log/mysqld.log

6、登入測試(用初始化密碼)

mysql -uroot -p

7、修改root登入密碼

ALTER USER 'root'@'localhost' IDENTIFIED BY '密碼';

flush privileges;

8、允許root遠端通路

update mysql.user set host = '%' where user ='root';

二:通過rpm包離線安裝

1、下載下傳安裝包

官網

[https://downloads.mysql.com/archives/community/](https://downloads.mysql.com/archives/community/)

wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.20-1.el7.x86_64.rpm-bundle.tar

國内鏡像站(中國科學技術大學鏡像站)

[http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-8.0/](http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-8.0/)

wget http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-8.0/mysql-8.0.20-1.el7.x86_64.rpm-bundle.tar

2、解壓

tar -xvf mysql-8.0.20-1.el7.x86_64.rpm-bundle.tar

3、安裝(各個rpm是有依賴的,是以要按順序安裝)

(1)rpm -ivh mysql-community-common-8.0.20-1.el7.x86_64.rpm

(2)rpm -ivh mysql-community-libs-8.0.20-1.el7.x86_64.rpm

如果報錯:

error: Failed dependencies:

mariadb-libs is obsoleted by mysql-community-libs-8.0.20-1.el7.x86_64

執行:yum -y remove mysql-libs再繼續安裝

(3)rpm -ivh mysql-community-libs-8.0.20-1.el7.x86_64.rpm

(4)rpm -ivh mysql-community-server-8.0.20-1.el7.x86_64.rpm

如果報錯:

error: Failed dependencies:

libaio.so.1()(64bit) is needed by mysql-community-server-8.0.20-1.el7.x86_64

libaio.so.1(LIBAIO_0.1)(64bit) is needed by mysql-community-server-8.0.20-1.el7.x86_64

libaio.so.1(LIBAIO_0.4)(64bit) is needed by mysql-community-server-8.0.20-1.el7.x86_64

執行:yum -y install libaio再繼續安裝

4、啟動

systemctl start mysqld

5、檢視狀态

systemctl status mysqld

6、檢視初始密碼

grep 'temporary password' /var/log/mysqld.log

7、登入測試(用初始化密碼)

mysql -uroot -p

8、修改root登入密碼

ALTER USER 'root'@'localhost' IDENTIFIED BY '密碼';

flush privileges;

9、允許root遠端通路

update mysql.user set host = '%' where user ='root';

三:使用源碼二進制TAR包安裝

1、下載下傳二進制glibc包

官網

[https://dev.mysql.com/downloads/mysql/](https://dev.mysql.com/downloads/mysql/)(選擇對應版本mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz)

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz

國内鏡像站(中國科學技術大學鏡像站)

wget http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/MySQL-8.0/mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz

2、解壓

tar -xvf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz

3、将解壓目錄移動到自定義目錄,并改名

mv mysql-8.0.21-linux-glibc2.12-x86_64 /usr/local/mysql

4、建立使用者組和使用者

groupadd mysql

useradd -r -g mysql mysql

5、建立配置檔案

vim /etc/my.cnf

[mysqld]

basedir=/usr/local/mysql # 基本路徑

datadir=/usr/local/mysql/data #資料路徑 (先在/usr/local/mysql建data目錄)

socket=/usr/local/mysql/data/mysql.sock # socket檔案

symbolic-links=0

log-error=/usr/local/mysql/data/mysqld.log #錯誤日志

pid-file=/usr/local/mysql/data/mysqld.pid #pid檔案

[mysql]

socket=/usr/local/mysql/data/mysql.sock

6、配置環境變量

vim /etc/profile

export MYSQL_HOME=/usr/local/mysql

export MYSQL_PATH=$MYSQL_HOME/bin

export PATH=$PATH:$MYSQL_PATH

source /etc/profile

7、初始化

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

報錯:

error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

原因:缺少libaio庫檔案

解決:執行yum install libaio* -y 再重新初始化

8、修改屬主屬組

chown -R mysql:mysql /usr/local/mysql

9、配置服務管理

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

mv mysql.server /etc/init.d/mysqld

10、啟動,設定密碼

因為沒有初始密碼,用跳過授權表的方式來啟動mysql

mysqld_safe --defaults-file=/etc/my.cnf --skip-grant-tables &

免密登入

mysql -uroot -p 不需要輸入密碼直接回車

flush privileges;

ALTER USER 'root'@'localhost' IDENTIFIED BY '密碼';

11、重新開機驗證密碼

service mysqld restart

service mysqld status

12、允許root遠端通路

mysql -uroot -p

update mysql.user set host = '%' where user ='root';

rpm -qa | grep -i mysql

rpm -e MySQL-client-5.6.38-1.el7.x86_64

whereis mysql

rm -rf /usr/lib/mysql

yum -y install autoconf

rpm -ivh MySQL-server-5.6.27-1.linux_glibc2.5.x86_64.rpm

copy mysql.server啟動腳本至/etc/init.d/mysqld

# /etc/init.d/mysql stop

# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

# mysql -u root mysql

mysql> UPDATE user SET Password=PASSWORD('openstack') where USER='root';

mysql> FLUSH PRIVILEGES;

mysql> quit

四、通過docker快速安裝

使用以下指令,查詢mysql 鏡像

docker search mysql

通過以下指令拉取mysql最新鏡像

docker pull mysql:latest

通過以下指令檢視已下載下傳的鏡像

docker images

通過以下指令建立并運作容器

docker run -d \

--name mysql \

--restart=always \

-p 3306:3306 \

-e MYSQL_ROOT_PASSWORD=xxxx \

mysql:latest

通過以下指令檢視正在運作的容器

docker ps

通過以下指令進入容器docker exec -it 68a63f41845e bash

登入mysql指令MySQL:mysql -u root -p

繼續閱讀