1. 程式人生 > >centOS7.2離線rpm安裝mysql5.7

centOS7.2離線rpm安裝mysql5.7

1、解除安裝系統自帶的 mariadb-lib

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

2、安裝

依次執行(幾個包有依賴關係,所以執行有先後)下面命令安裝

rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm --force --nodeps
rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm --force --nodeps

在安裝rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm的時候報錯如下: 

  [[email protected]_node_1 src]# rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm 
  warning: mysql-community-server-5.7.16-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
  error: Failed dependencies:
  libaio.so.1()(64bit) is needed by mysql-community-server-5.7.16-1.el7.x86_64
  libaio.so.1(LIBAIO_0.1)(64bit) is needed by mysql-community-server-5.7.16-1.el7.x86_64
  libaio.so.1(LIBAIO_0.4)(64bit) is needed by mysql-community-server-5.7.16-1.el7.x86_64
  net-tools is needed by mysql-community-server-5.7.16-1.el7.x86_64

解決辦法

安裝libaio包和net-tools包

libaio下載地址

http://mirror.centos.org/centos/6/os/x86_64/Packages/libaio-0.3.107-10.el6.x86_64.rpm

net-tools下載辦法

yum install --downloadonly --downloaddir=/home/net-tools net-tools

問題原因:這是由於yum安裝了舊版本的GPG keys造成的

rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm --force --nodeps

資料庫初始化
為了保證資料庫目錄為與檔案的所有者為 mysql 登陸使用者,如果你是以 root 身份執行 mysql 服務,需要執行下面的命令初始化

mysqld --initialize --user=mysql

如果是以 mysql 身份執行,則可以去掉 --user 選項。

 另外 --initialize 選項預設以“安全”模式來初始化,則會為 root 使用者生成一個密碼並將該密碼標記為過期,登陸後你需要設定一個新的密碼,而使用 --initialize-insecure 命令則不使用安全模式,則不會為 root 使用者生成一個密碼。

  這裡演示使用的 --initialize 初始化的,會生成一個 root 賬戶密碼,密碼在log檔案裡,紅色區域的就是自動生成的密碼

檢視密碼

cat /var/log/mysqld.log 

啟動資料庫服務

systemctl start mysqld.service

修改登陸密碼

set password=password('123456');

配置MySql遠端連線,可以在外部機器連線Mysql

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;