Ubuntu 18.04 安裝MySQL-5.7最新版本

更新:
執行如下命令:
apt-get install mysql-server
即可。

新建一個臨時目錄:

cd ~
mkdir mysql
cd mysql

執行如下命令下載文件(mysql-5.7.29是5.7最新版本)

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz

解壓

tar -xvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz 

重命名

 mv mysql-5.7.29-linux-glibc2.12-x86_64/ mysql-5.7.29

移動

mv mysql-5.7.29 /usr/local/

創建mysql組和用戶

groupadd mysql
useradd -r -g mysql mysql

創建mysq數據目錄

cd /
mkdir -p data
cd data/
mkdir -p mysql

賦予權限

chown mysql:mysql -R /data/mysql

配置參數

 vim /etc/my.cnf

然後 按 i 進入編輯模式,把下面內容複製進去:

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql-5.7.29
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0

編輯完後 按esc 後按住 shift+: 輸入 wq表示保存並退出 。

初始化數據庫

cd /usr/local/mysql-5.7.29/bin/
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql-5.7.29/ --datadir=/data/mysql/ --user=mysql --initialize

這裏如果報如下錯誤:

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

需要安裝libaio1

apt-get install libaio1

安裝成功後
查看密碼,複製

vim /data/mysql/mysql.err

啓動

service mysql start

查看是否啓動成功

ps -A | grep mysql

顯示如下

23838 ?        00:00:00 mysqld_safe
24052 ?        00:00:00 mysqld

停止

service mysql stop

更改密碼

cd /usr/local/mysql-5.7.29/bin
./mysql -u root -p

執行修改,並刷新

SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;

設置相關權限

cp ./support-files/mysql.server /etc/init.d/mysqld
chown 777 /etc/my.cnf
chmod +x /etc/init.d/mysqld

如果你的系統有Mariadb,需要先卸載

rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64

最後,需要加入一下環境變量

vi ~/.bashrc

在文件末尾插入如下內容

export PATH=$PATH:/usr/local/mysql-5.7.29/bin

執行命令

source ~/.bashrc

綜上,mysql安裝完成了,可以進行MySQL常規操作了

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
| db                        |
| engine_cost               |
| event                     |
| func                      |
| general_log               |
| user                      |
+---------------------------+
31 rows in set (0.00 sec)
mysql> select * from time_zone;
Empty set (0.00 sec)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章