linux环境下的mysql离线安装
1.上传mysql安装包到集群
2.检查当前系统是否安装过mysql
[root@apache03 apache-bigdata]# rpm -qa | grep mariadb
mariadb-libs-5.5.44-2.el7.centos.x86_64 //如果存在通过如下命令卸载
[root@apache03 apache-bigdata]# sudo rpm -e --nodeps mariadb-libs //用此命令卸载mariadb
3.解压mysql安装包
[root@apache03 apache-bigdata]# tar -xvf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar
4.在安装目录下执行rpm安装
[root@apache03 apache-bigdata]# sudo rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm
[root@apache03 apache-bigdata]# sudo rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm
[root@apache03 apache-bigdata]# sudo rpm -ivh mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm
[root@apache03 apache-bigdata]# sudo rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm
[root@apache03 apache-bigdata]# rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm --nodeps --force
注意:按照顺序依次执行
5.删除/etc/my.cnf文件中datadir指向的目录下的所有内容
[root@apache03 apache-bigdata]# cd /var/lib/mysql
[root@apache03 mysql]# ll
total 0
[root@apache03 mysql]# sudo rm -rf ./* //注意执行命令的位置
6.初始化数据库
[root@apache03 mysql]# sudo mysqld --initialize --user=mysql
7. 查看临时生成的root用户的密码
[root@apache03 mysql]# sudo cat /var/log/mysqld.log
2009-01-11T07:07:38.183890Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2009-01-11T07:07:38.536189Z 0 [Warning] InnoDB: New log files created, LSN=45790
2009-01-11T07:07:38.602280Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2009-01-11T07:07:38.670674Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 87cdee1f-dfae-11dd-ac56-fa163eb41981.
2009-01-11T07:07:38.676958Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2009-01-11T07:07:39.615376Z 0 [Warning] CA certificate ca.pem is self signed.
2009-01-11T07:07:40.379779Z 1 [Note] A temporary password is generated for root@localhost: 7FE!VUSfz=#e
8. 启动mysql服务
[root@apache03 mysql]# sudo systemctl start mysqld
9. 登录数据库
[root@apache03 mysql]# mysql -uroot -p7FE!VUSfz=#e
10. 必须先修改root密码,否则执行其他的操作会报错
mysql> set password = password("123456");
Query OK, 0 rows affected, 1 warning (0.00 sec)
11. 修改mysql库下的user表中的root用户允允许任意ip连接
mysql> update mysql.user set host='%' where user='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)