centos7安装mysql5.7.18完整实用教程(★firecat推荐★)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: centos7安装mysql5.7.18完整实用教程(★firecat推荐★)

CentOS 7的yum源中貌似没有正常安装mysql时的mysql-sever文件,需要去官网上下载https://downloads.mysql.com/archives/community/


image.png

1、准备工作


最简单的安装mysql-server服务,只需要准备好如下5个软件包即可,我们可以使用rpm -ivh命令进行安装

mysql-community-common-5.7.18-1.el7.x86_64.rpm

mysql-community-libs-5.7.18-1.el7.x86_64.rpm             --(依赖于common)

mysql-community-client-5.7.18-1.el7.x86_64.rpm          --(依赖于libs)

mysql-community-server-5.7.18-1.el7.x86_64.rpm         --(依赖于client、common)


mysql-community-devel-5.7.18-1.el7.x86_64.rpm          -- 里面内容是c语言版本的客户端库函数和头文件


注:c语言客户端默认安装位置是


头文件 /usr/include/mysql


静态和动态库 /usr/lib64/mysql



2、按顺序逐个安装rpm


[root@localhost mysql]# rpm -ivh mysql-community-common-5.7.18-1.el7.x86_64.rpm

warning: mysql-community-common-5.7.18-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

Preparing...                          ################################# [100%]

file /usr/share/mysql/czech/errmsg.sys from install of mysql-community-common-5.7.18-1.el7.x86_64 conflicts with file from package mariadb-libs-1:5.5.50-1.el7_2.x86_64



笔者注:提示库冲突,需要先卸载centos原有的mariadb-libs。请注意,这样会同时卸载掉谷歌浏览器。没关系,先安装完mysql,然后再把谷歌浏览器装回来。

[root@localhost mysql]# yum remove mysql-libs


笔者注:然后再正式安装,注意先后顺序

[root@localhost mysql]# rpm -ivh mysql-community-common-5.7.18-1.el7.x86_64.rpm

warning: mysql-community-common-5.7.18-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

  1:mysql-community-common-5.7.18-1.e################################# [100%]


[root@localhost mysql]# rpm -ivh mysql-community-libs-5.7.18-1.el7.x86_64.rpm

warning: mysql-community-libs-5.7.18-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

  1:mysql-community-libs-5.7.18-1.el7################################# [100%]


[root@localhost mysql]# rpm -ivh mysql-community-client-5.7.18-1.el7.x86_64.rpm

warning: mysql-community-client-5.7.18-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

  1:mysql-community-client-5.7.18-1.e################################# [100%]


[root@localhost mysql]# rpm -ivh mysql-community-server-5.7.18-1.el7.x86_64.rpm

warning: mysql-community-server-5.7.18-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

  1:mysql-community-server-5.7.18-1.e################################# [100%]


如果编译报错:


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

不要紧,安装依赖库numactl即可    

[root@localhost mysql]# yum  install  numactl


error: Failed dependencies:

       net-tools is needed by mysql-community-server-5.7.23-1.el7.x86_64

[root@localhost mysql]# yum install net-tools


[root@localhost mysql]# rpm -ivh mysql-community-devel-5.7.18-1.el7.x86_64.rpm



笔者注:启动mysql服务

[root@localhost ~]# systemctl start mysqld


笔者注:查看mysql服务

[root@localhost ~]# systemctl status mysqld

● mysqld.service - MySQL Server

  Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)

  Active: active (running) since Fri 2017-07-28 14:39:49 CST; 13s ago

    Docs: man:mysqld(8)

         http://dev.mysql.com/doc/refman/en/using-systemd.html

 Process: 102480 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)

 Process: 102401 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)

Main PID: 102482 (mysqld)

  CGroup: /system.slice/mysqld.service

          └─102482 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/m...


Jul 28 14:39:42 localhost.localdomain systemd[1]: Starting MySQL Server...

Jul 28 14:39:49 localhost.localdomain systemd[1]: Started MySQL Server.


笔者注:查看首次安装后,mysql默认生成的root密码

[root@localhost ~]# cat /var/log/mysqld.log | grep password

2017-07-28T06:39:45.719457Z 1 [Note] A temporary password is generated for root@localhost:ZkGlpbBH;9s?


笔者注:root登录,输入默认密码。这个默认密码是随机生成的,不同机器不同。

[root@localhost ~]# mysql -u root -p

Enter password: ZkGlpbBH;9s?

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 3

Server version: 5.7.18


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> create database helloworld;

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.


笔者注:修改密码,需要大小写字母,数字和字符的组合

mysql> SET PASSWORD = PASSWORD('Mypwd123456$');

Query OK, 0 rows affected, 1 warning (0.01 sec)


笔者注:授权远程客户端连接

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Mypwd123456$' WITH GRANT OPTION;


Query OK, 0 rows affected, 1 warning (0.01 sec)

mysql> FLUSH PRIVILEGES;


Query OK, 0 rows affected, 1 warning (0.01 sec)




笔者注:远程连接的前提条件,先要关闭Linux的防火墙。


CentOS 7操作防火墙的命令是:


[root@localhost ~]# firewall-cmd --state #查看防火墙是否启用


[root@localhost ~]# systemctl stop firewalld#关闭防火墙



mysql-community-devel-5.7.18-1.el7.x86_64.rpm安装完毕后,就带了c语言版本的库函数,头文件和库路径分别是/usr/include/mysql和/usr/lib64/mysql


CMakeLists.txt文件:


SET(MYSQL_INCLUDE_DIR /usr/include/mysql)

SET(MYSQL_LIB /usr/lib64/mysql)


INCLUDE_DIRECTORIES(${MYSQL_INCLUDE_DIR})

LINK_DIRECTORIES(${MYSQL_LIB})


TARGET_LINK_LIBRARIES(mysqlclient)



安装完毕后,


数据库文件默认在:cd /usr/share/mysql

配置文件默认在:/etc/my.cnf



参考文章:


centos7安装mysql-5.7.18-1.el7.x86_64.rpm-bundle.tar


关于linux-Centos 7下mysql 5.7.9的rpm包的安装方式



相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1天前
|
Unix Linux 开发工具
centos的官网下载和vm16虚拟机安装centos8【保姆级教程图解】
本文详细介绍了如何在官网下载CentOS 8以及在VMware Workstation Pro 16虚拟机上安装CentOS 8的步骤,包括可能出现的问题和解决方案,如vcpu-0错误的处理方法。
centos的官网下载和vm16虚拟机安装centos8【保姆级教程图解】
|
2天前
|
消息中间件 Linux
centos7安装rabbitmq
centos7安装rabbitmq
|
21小时前
|
关系型数据库 MySQL Linux
Linux 安装 mysql 【使用 tar.gz | tar.xz安装包-离线安装】
在Linux系统中使用tar.xz压缩包安装MySQL数据库的详细步骤。包括下载MySQL压缩包,解压到指定目录,创建mysql用户和组,设置目录权限,初始化MySQL,配置my.cnf文件,启动服务,以及修改root用户密码。此外,还提供了如何设置Windows远程登录MySQL服务器的方法。
Linux 安装 mysql 【使用 tar.gz | tar.xz安装包-离线安装】
|
21小时前
|
关系型数据库 MySQL Linux
Linux 安装 mysql【使用yum源进行安装】
这篇文章介绍了在Linux系统中使用yum源安装MySQL数据库的步骤,包括配置yum源、安装MySQL服务、启动服务以及修改root用户的默认密码。
Linux 安装 mysql【使用yum源进行安装】
|
1天前
|
分布式计算 Hadoop Java
Hadoop集群搭建,基于3.3.4hadoop和centos8【图文教程-从零开始搭建Hadoop集群】,常见问题解决
本文是一份详细的Hadoop集群搭建指南,基于Hadoop 3.3.4版本和CentOS 8操作系统。文章内容包括虚拟机创建、网络配置、Java与Hadoop环境搭建、克隆虚拟机、SSH免密登录设置、格式化NameNode、启动Hadoop集群以及通过UI界面查看Hadoop运行状态。同时,还提供了常见问题的解决方案。
Hadoop集群搭建,基于3.3.4hadoop和centos8【图文教程-从零开始搭建Hadoop集群】,常见问题解决
|
1天前
|
Linux 虚拟化 Windows
完美解决:重新安装VMware Tools灰色。以及共享文件夹的创建(centos8)
这篇文章提供了解决VMware Tools无法重新安装(显示为灰色)问题的步骤,并介绍了如何在CentOS 8上创建和配置VMware共享文件夹。
完美解决:重新安装VMware Tools灰色。以及共享文件夹的创建(centos8)
|
21小时前
|
Linux
centos 安装etcd|待优化
centos 安装etcd|待优化
|
2天前
|
Docker 容器
centos7.3之安装docker
centos7.3之安装docker
|
2天前
|
Linux Python
Linux之centos安装clinkhouse以及python如何连接
Linux之centos安装clinkhouse以及python如何连接
|
11天前
|
NoSQL 关系型数据库 MySQL
微服务架构下的数据库选择:MySQL、PostgreSQL 还是 NoSQL?
在微服务架构中,数据库的选择至关重要。不同类型的数据库适用于不同的需求和场景。在本文章中,我们将深入探讨传统的关系型数据库(如 MySQL 和 PostgreSQL)与现代 NoSQL 数据库的优劣势,并分析在微服务架构下的最佳实践。