1. 程式人生 > >CentsOS7無網情況下安裝mysql5.7

CentsOS7無網情況下安裝mysql5.7

rman debug x86-64 https conda oot fma 支持 depend

1.需求就不用講了,客戶現場,政府環境,銀行環境,大多是沒網的,所以無網安裝是很有必要的

mysql下載路徑:https://dev.mysql.com/downloads/mysql/

技術分享

查看自己Linux系統版本

[root@kylintest ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)

往下拉繼續選擇

技術分享

選擇對應的下載,mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar

這樣幾分鐘就下載了。

2.準備依賴包:

a.numactl 軟件包:

  • numactl-2.0.9-6.el7_2.x86_64.rpm
  • numactl-devel-2.0.9-6.el7_2.x86_64.rpm
  • numactl-libs-2.0.9-6.el7_2.x86_64.rpm

b.其他相關支持:

  • perl-Data-Dumper-2.145-3.el7.x86_64.rpm
  • libaio-0.3.109-13.el7.x86_64.rpm

下載方式:https://pkgs.org

技術分享

下面是下載路徑:

libaio-0.3.109-13.el7.x86_64.rpm

perl-Data-Dumper-2.145-3.el7.x86_64.rpm

numactl-libs-2.0.9-6.el7_2.x86_64.rpm

numactl-devel-2.0.9-6.el7_2.x86_64.rpm

numactl-2.0.9-6.el7_2.x86_64.rpm

3.上傳文件到服務器上

localhost:Downloads kylin$ scp -r numactl-2.0.9-6.el7_2.x86_64.rpm root@kylintest:/root/
root@kylintest‘s password: 
numactl-2.0.9-6.el7_2.x86_64.rpm              100%   65KB   2.1MB/s   00:00    
localhost:Downloads kylin$ scp -r numactl-libs-2.0.9-6.el7_2.x86_64.rpm root@kylintest:/root/
root@kylintest‘s password: 
numactl-libs-2.0.9-6.el7_2.x86_64.rpm         100%   29KB   1.7MB/s   00:00    
localhost:Downloads kylin$ scp -r numactl-devel-2.0.9-6.el7_2.x86_64.rpm root@kylintest:/root/
root@kylintest‘s password: 
numactl-devel-2.0.9-6.el7_2.x86_64.rpm        100%   23KB   1.5MB/s   00:00    
localhost:Downloads kylin$ scp -r perl-Data-Dumper-2.145-3.el7.x86_64.rpm root@kylintest:/root/
root@kylintest‘s password: 
perl-Data-Dumper-2.145-3.el7.x86_64.rpm       100%   47KB   1.2MB/s   00:00    
localhost:Downloads kylin$ scp -r libaio-0.3.109-13.el7.x86_64.rpm root@kylintest:/root/
root@kylintest‘s password: 
Permission denied, please try again.
root@kylintest‘s password: 
libaio-0.3.109-13.el7.x86_64.rpm              100%   24KB 618.3KB/s   00:00    
localhost:Downloads kylin$ scp -r mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar root@kylintest:/root/
root@kylintest‘s password: 
mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar                     100%  566MB   4.5MB/s   02:05

查看上傳的包

[root@kylintest ~]# ls
anaconda-ks.cfg                           numactl-devel-2.0.9-6.el7_2.x86_64.rpm
libaio-0.3.109-13.el7.x86_64.rpm          numactl-libs-2.0.9-6.el7_2.x86_64.rpm
miniconda2                                perl-Data-Dumper-2.145-3.el7.x86_64.rpm
mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar  pythonshell
numactl-2.0.9-6.el7_2.x86_64.rpm

4.安裝

第一步,先安裝依賴,安裝 perl-Data-Dumper-2.145-3.el7.x86_64.rpm 和 libaio-0.3.109-13.el7.x86_64.rpm

[root@kylintest ~]# rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm 
Preparing...                          ################################# [100%]
	package libaio-0.3.109-13.el7.x86_64 is already installed
[root@kylintest ~]# rpm -ivh perl-Data-Dumper-2.145-3.el7.x86_64.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
   1:perl-Data-Dumper-2.145-3.el7     ################################# [100%]

第二步,繼續安裝 numactl相關

[root@kylintest ~]# rpm -ivh numactl*
Preparing...                          ################################# [100%]
	package numactl-libs-2.0.9-6.el7_2.x86_64 is already installed

如果不安裝這個包會報錯,錯誤如下(本人未測試):

error: Failed dependencies: 
 
libnuma.so.1()(64bit) is needed by mysql-community-server-5.7.18-1.el7.x86_64 
 
libnuma.so.1(libnuma_1.1)(64bit) is needed by mysql-community-server-5.7.18-1.el7.x86_64 
 
libnuma.so.1(libnuma_1.2)(64bit) is needed by mysql-community-server-5.7.18-1.el7.x86_64  

若此時直接安裝mysql,還會異常:

warning: mysql-community-libs-5.7.18-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY error: Failed dependencies: 
 mysql-community-common(x86-64) >= 5.7.9 is needed by mysql-community-libs-5.7.18-1.el7.x86_64 
 mariadb-libs is obsoleted by mysql-community-libs-5.7.18-1.el7.x86_64

第一行還能看明白,是依賴問題,第二行的“mariadb-libs 被廢棄”是什麽鬼?廢棄了為什麽不提供一個新的還要出現這種弱智提示呢?經過一番搜尋,才發現是因為在CentOS 7上已經有一個mariadb 而這個會與 MySQL的mariadb發生沖突。所以此時我們需要將系統自帶的mariadb卸載掉,然後使用mysql自帶的mariadb。

接下來查看mariadb版本

[root@kylintest ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.52-1.el7.x86_64

卸載系統安裝的mariadb

[root@kylintest ~]# rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64
[root@kylintest ~]# rpm -qa | grep mariadb
[root@kylintest ~]#

解決好這個問題後,就可以安裝mysql了,先解壓mysql,並查看安裝包

[root@kylintest ~]# tar -xf mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar 
[root@kylintest ~]# ls
anaconda-ks.cfg
libaio-0.3.109-13.el7.x86_64.rpm
miniconda2
mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar
mysql-community-client-5.7.20-1.el7.x86_64.rpm
mysql-community-common-5.7.20-1.el7.x86_64.rpm
mysql-community-devel-5.7.20-1.el7.x86_64.rpm
mysql-community-embedded-5.7.20-1.el7.x86_64.rpm
mysql-community-embedded-compat-5.7.20-1.el7.x86_64.rpm
mysql-community-embedded-devel-5.7.20-1.el7.x86_64.rpm
mysql-community-libs-5.7.20-1.el7.x86_64.rpm
mysql-community-libs-compat-5.7.20-1.el7.x86_64.rpm
mysql-community-minimal-debuginfo-5.7.20-1.el7.x86_64.rpm
mysql-community-server-5.7.20-1.el7.x86_64.rpm
mysql-community-server-minimal-5.7.20-1.el7.x86_64.rpm
mysql-community-test-5.7.20-1.el7.x86_64.rpm
numactl-2.0.9-6.el7_2.x86_64.rpm
numactl-devel-2.0.9-6.el7_2.x86_64.rpm
numactl-libs-2.0.9-6.el7_2.x86_64.rpm
perl-Data-Dumper-2.145-3.el7.x86_64.rpm
pythonshell

直接安裝,報錯:

[root@kylintest ~]# rpm -ivh mysql-community-*
warning: mysql-community-client-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
	net-tools is needed by mysql-community-server-5.7.20-1.el7.x86_64
	perl(JSON) is needed by mysql-community-test-5.7.20-1.el7.x86_64

貌似不能直接全安裝,有順序,繼續:

[root@kylintest ~]# rpm -ivh mysql-community-common-5.7.20-1.el7.x86_64.rpm 
warning: mysql-community-common-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-common-5.7.20-1.e################################# [100%]
[root@kylintest ~]# rpm -ivh mysql-community-libs-*
warning: mysql-community-libs-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-libs-5.7.20-1.el7################################# [ 50%]
   2:mysql-community-libs-compat-5.7.2################################# [100%]
[root@kylintest ~]# rpm -ivh mysql-community-devel-5.7.20-1.el7.x86_64.rpm 
warning: mysql-community-devel-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-devel-5.7.20-1.el################################# [100%]
[root@kylintest ~]# 
[root@kylintest ~]# rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm 
warning: mysql-community-server-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
	mysql-community-client(x86-64) >= 5.7.9 is needed by mysql-community-server-5.7.20-1.el7.x86_64
	net-tools is needed by mysql-community-server-5.7.20-1.el7.x86_64

說缺少net-tools ,下載下來裝唄,繼續:

net-tools-2.0-0.22.20131004git.el7.x86_64.rpm

[root@kylintest ~]# rpm -ivh net-tools-2.0-0.22.20131004git.el7.x86_64.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
   1:net-tools-2.0-0.22.20131004git.el################################# [100%]
[root@kylintest ~]# rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm 
warning: mysql-community-server-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
	mysql-community-client(x86-64) >= 5.7.9 is needed by mysql-community-server-5.7.20-1.el7.x86_64
[root@kylintest ~]# rpm -ivh mysql-community-c
mysql-community-client-5.7.20-1.el7.x86_64.rpm  mysql-community-common-5.7.20-1.el7.x86_64.rpm
[root@kylintest ~]# rpm -ivh mysql-community-client-5.7.20-1.el7.x86_64.rpm 
warning: mysql-community-client-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-client-5.7.20-1.e################################# [100%]
[root@kylintest ~]# rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm 
warning: mysql-community-server-5.7.20-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:mysql-community-server-5.7.20-1.e################################# [100%]

中間安裝server時,又說必須安裝client,至此,mysql安裝成功,打完收工。

5.啟動查看配置

[root@kylintest ~]# service mysqld start
Redirecting to /bin/systemctl start  mysqld.service
[root@kylintest ~]# service mysqld status
Redirecting to /bin/systemctl status  mysqld.service
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2017-11-04 13:56:37 CST; 24s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 4644 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
  Process: 4571 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 4647 (mysqld)
   CGroup: /system.slice/mysqld.service
           └─4647 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

Nov 04 13:56:07 kylintest systemd[1]: Starting MySQL Server...
Nov 04 13:56:37 kylintest systemd[1]: Started MySQL Server.

至此,無網安裝難的歷史已經結束,至少的我實驗沒問題了,好像還缺點是什麽,數據庫密碼是啥?

[root@kylintest ~]# cat /var/log/mysqld.log | grep password
2017-11-04T05:56:08.454323Z 1 [Note] A temporary password is generated for root@localhost: ps1DY?%T.Vc4

這樣就可以登錄數據庫了,try一下:

[root@kylintest ~]# mysql -u root
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO)

報錯了,連輸入密碼的機會也沒有。

[root@kylintest ~]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.7.20

Copyright (c) 2000, 2017, 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>

登陸成功試試,數據庫好使不

mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

不改密碼,用不了,繼續:

mysql> ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘你的密碼‘;
Query OK, 0 rows affected (0.02 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)

然後再使用SQL就沒問題了

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

用數據庫工具鏈接,出現問題:

技術分享

不允許遠程訪問,改繼續:

mysql>  GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘你的密碼‘ WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

再試就沒有問題了,至此數據庫安裝問題基本沒有。

查看mysql配置文件地址:

[root@kylintest ~]# find / -iname ‘*.cnf‘ -print
/etc/pki/tls/openssl.cnf
/etc/my.cnf
/root/miniconda2/pkgs/openssl-1.0.2l-0/ssl/openssl.cnf
/root/miniconda2/ssl/openssl.cnf
/var/lib/mysql/auto.cnf

查看字符集:

mysql> show variables like ‘char%‘;
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.01 sec)

至此數據庫安裝完畢。

CentsOS7無網情況下安裝mysql5.7