MySQL數(shù)據(jù)庫的幾種安裝方式
MySQL數(shù)據(jù)庫是一款深受歡迎的開源領(lǐng)域的重要的關(guān)系型數(shù)據(jù)庫,由瑞典MySQL AB公司開發(fā)與維護(hù),2006年,Mysql AB公司被SUN公司收購, 2008年,SUN公司又被數(shù)據(jù)庫龍頭公司甲骨文(oracle公司)收購,因此,Mysql數(shù)據(jù)庫目前屬于oracle公司。MySQL數(shù)據(jù)庫目前分為社區(qū)版(Community Server)和企業(yè)版(Enterprise),它們最重要的區(qū)別在于:社區(qū)版是自由下載而且完全免費(fèi)的,但是官方不提供任何技術(shù)支持,適用于大多數(shù)普通用戶;企業(yè)版是收費(fèi)的,不能在線下載,它提供了更多的功能和更完備的技術(shù)支持,更適合于對數(shù)據(jù)庫的功能和可靠性要求較高的企業(yè)客戶。本文就介紹Linux系統(tǒng)下MySQL社區(qū)版的幾種安裝方式。
RPM/YUM方式安裝Mysql
1.首先去官網(wǎng)https://dev.mysql.com/downloads/repo/yum/下載mysql的yum源并上傳至服務(wù)器上?;蛘呤褂靡韵旅钸M(jìn)行下載:
- wget http://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm
2.安裝mysql的yum源。
- rpm -ivh mysql80-community-release-el7-3.noarch.rpm
3.yum安裝mysql。
- yum install mysql-server -y
4.安裝完成后啟動mysql。
- systemctl start mysqld
此外,你也可以使用 MariaDB 代替,MariaDB 數(shù)據(jù)庫管理系統(tǒng)是 MySQL 的一個分支,主要由開源社區(qū)在維護(hù),采用 GPL 授權(quán)許可。開發(fā)這個分支的原因之一是:甲骨文公司收購了 MySQL 后,有將 MySQL 閉源的潛在風(fēng)險,因此社區(qū)采用分支的方式來避開這個風(fēng)險。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能輕松成為MySQL的代替品。
- yum install mariadb-server -y
二進(jìn)制方式安裝Mysql
1.首先去官網(wǎng)https://dev.mysql.com/downloads/mysql/下載mysql的Linux Generic版本并上傳至服務(wù)器上。

2.添加mysql用戶和用戶組,數(shù)據(jù)庫安裝在此用戶下。
- # groupadd mysql
- # useradd -g mysql mysql
3.解壓二進(jìn)制安裝包,假設(shè)安裝包放置在/home/mysql下,并對解壓后的mysql目錄加一個符合鏈接“mysql”,這樣對mysql目錄的操作會比較方便。
- # cd /home/mysql/
- # tar -xvJf mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
- # ln -s mysql-8.0.19-linux-glibc2.12-x86_64 mysql
4.創(chuàng)建mysql數(shù)據(jù)目錄,并修改目錄權(quán)限。
- # mkdir /home/mysql/data
- # chown -R mysql.mysql /home/mysql/data/
5.初始化數(shù)據(jù)庫。會生成一個默認(rèn)隨機(jī)密碼。
- # /home/mysql/mysql/bin/mysqld --initialize --user=mysql --basedir=/home/mysql/mysql --datadir=/home/mysql/data
6.配置mysql參數(shù)文件 /etc/my.cnf并賦予mysql權(quán)限。
- # vi /etc/my.cnf
- [mysqld]
- basedir=/home/mysql/mysql
- datadir=/home/mysql/data
- # chown mysql.mysql /etc/my.cnf
7.設(shè)置mysql啟動文件并啟動mysql。
- # cp /home/mysql/mysql/support-files/mysql.server /etc/init.d/mysqld
- # service mysqld start
- Starting MySQL.Logging to '/home/mysql/data/linux-52-122.err'.
- .. SUCCESS!
8.添加mysql環(huán)境變量并生效。
- # echo "export PATH=$PATH:/home/mysql/mysql/bin">>/etc/profile
- # source /etc/profile
9.連接mysql,輸入之前生成的隨機(jī)密碼登錄后修改密碼并生效。
- # mysql -u root -p
- Enter password:
- Welcome to the MySQL monitor. Commands end with ; or \g.
- Your MySQL connection id is 10
- Server version: 8.0.19
- Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
- Oracle is a registered trademark of Oracle Corporation and/or its
- affiliates. Other names may be trademarks of their respective
- owners.
- Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
- mysql> alter user 'root'@'localhost' identified by '123456';
- Query OK, 0 rows affected (0.00 sec)
- mysql> flush privileges;
- Query OK, 0 rows affected (0.00 sec)
- mysql> exit
- Bye
源碼編譯安裝Mysql
1.安裝源碼包和安裝二進(jìn)制包有點類似,首先去官網(wǎng)https://dev.mysql.com/downloads/mysql/下載mysql的source code并上傳至服務(wù)器上?;蛘呤褂靡韵旅钸M(jìn)行下載:
- # wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.29.tar.gz
2.創(chuàng)建mysql群組和用戶名。同時為安全起見可禁止直接以mysql用戶身份登錄系統(tǒng)。
- # groupadd mysql
- # useradd -r -g mysql -s /bin/false mysql
3.創(chuàng)建mysql安裝目錄和數(shù)據(jù)目錄,并修改目錄權(quán)限。
- # mkdir -p /usr/local/mysql
- # mkdir -p /data/mysql
- # chown -R mysql.mysql /usr/local/mysql/
- # chown -R mysql.mysql /data/mysql/
4.解壓mysql源碼包。
- # tar -xzvf mysql-boost-5.7.29.tar.gz
5.編譯安裝mysql。如果沒有cmake工具先安裝一下。
- # yum install cmake -y
- # cd mysql-5.7.29
- cmake . \
- -DWITH_BOOST=/root/mysql-5.7.29/boost \
- -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
- -DMYSQL_DATADIR=/data/mysql \
- -DWITH_INNOBASE_STORAGE_ENGINE=1 \
- -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 \
- -DWITHOUT_ARCHIVE_STORAGE_ENGINE=1 \
- -DWITH_PARTITION_STORAGE_ENGINE=1 \
- -DWITH_DEBUG=1 \
- -DDEFAULT_CHARSET=utf8 \
- -DDEFAULT_COLLATION=utf8_general_ci \
- -DFORCE_INSOURCE_BUILD=1 \
- -DDOWNLOAD_BOOST=1 \
- -DWITH_SSL=system
- # make && make install
關(guān)于編譯參數(shù)的含義可以參考官方文檔說明:
https://dev.mysql.com/doc/refman/8.0/en/source-configuration-options.html
6.初始化數(shù)據(jù)庫。并且會生成一個默認(rèn)隨機(jī)密碼。

7.設(shè)置啟動腳本并啟動mysql。
- # cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
- # systemctl start mysqld
8.添加mysql環(huán)境變量并生效。
- # echo "export PATH=$PATH:/usr/local/mysql/bin">>/etc/profile
- # source /etc/profile
9.登錄數(shù)據(jù)庫,用剛才生成的默認(rèn)密碼進(jìn)行登錄后進(jìn)行密碼更改。

10.更改密碼后登錄成功。

總結(jié)
