centos7安装mysql-5.7.28
mysql是我们最常用的开源的关系型数据库,mysql不同版本有时候安装的方式也不尽相同,下面以mysql5.7.28版本为例梳理一下安装细节:
1.下载mysql-5.7.28,URL:https://downloads.mysql.com/archives/community/ 我这里下载的是64位版本
下载后文件为:mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
2. 卸载自带的mariadb和mysql
检查是否安装了mariadb和mysql,有时候默认安装了
rpm -qa | grep mariadb
rpm -qa | grep mysql
如果没有,就可以安装mysql,如果有,需要先卸载(remove后为上面命令查询到的内容,全文件名,我这里没有,没法展示)
yum remove mariadb-xxx
3.解压文件,修改目录名方便配置
tar -zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz -C /opt/soft/
cd /opt/soft
mv mysql-5.7.28-linux-glibc2.12-x86_64 mysql-5.7.28
4.在/usr/local/目录下创建到/opt/soft/mysql-5.7.28的软链接
cd /usr/local
ln -s /opt/soft/mysql-5.7.28 mysql
5.添加mysql用户,修改mysql目录权限,并用此用户执行应用
useradd -s /bin/false -M mysql
cd /opt/soft
chown -R mysql:mysql mysql-5.7.28
6.拷贝配置文件,将mysql的配置文件拷贝为/etc/目录下的my.cnf,并修改配置文件

vim /etc/my.cnf [mysqld]
# binlog 配置
log-bin=/usr/local/mysql/logs/mysql-bin.log
expire-logs-days=14
max-binlog-size=500M
server-id=1
# GENERAL
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/mysql.sock
user=mysql
default-storage-engine=InnoDB
character-set-server=utf8
lower_case_table_names = 1
explicit_defaults_for_timestamp=true
[mysqld_safe]
log-error=/usr/local/mysql/mysql-error.log
pid-file=/usr/local/mysql/mysqld.pid
[client]
socket=/usr/local/mysql/mysql.sock
[mysql]
default-character-set=utf8
socket=/usr/local/mysql/mysql.sock

7.安装mysql,进入mysql目录执行以下命令
cd /opt/soft/mysql-5.7.28
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
如果出现如下错误,说明需要安装依赖包:
安装autoconf依赖包:
yum -y install autoconf
再次执行脚本
如果出现以下错误,说明在my.cnf中指定的binlog配置文件的logs文件夹不存在:
在/usr/local/mysql/下创建logs文件夹就行了,并改为mysql用户
再次执行脚本
出现以下信息,代表成功,要保存一下密码,
8.拷贝启动程序,将mysql的启动程序拷贝到/etc/init.d/目录下
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
9.安装完,启动mysql服务
service mysqld start
如果出现如下错误:
[root@s144 support-files]# service mysqld start
Starting MySQL.--31T23::.412533Z mysqld_safe error: log-error set to '/usr/local/mysql/mysql-error.log', however file don't exists. Create writable for user 'mysql'.
ERROR! The server quit without updating PID file (/usr/local/mysql/data/s144.pid).
说明mysql-error.log不存在,手动去创建,并修改权限
cd /opt/soft/mysql-5.7.
touch mysql-error.log
chown mysql:mysql mysql-error.log
出现SUCCESS,说明启动成功
10.配置环境变量,编辑/etc/profile,方便在任何地方用mysql命令

vim /etc/profile
#mysql
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin

别忘记重新编译 /etc/profile
source /etc/profile
11.登录mysql,修改密码
首次登录没有密码,提示输入密码时,输入第7步安装时生成的密码:p5j2jfX7am.h
mysql -uroot -p
这里要先使用alter user重置密码,不然会报错,我这里 修改mysql root用户密码 为 111111 :
mysql> alter user 'root'@'localhost' identified by '111111';
mysql> flush privileges;
至此本机登录密码修改完成,若是想让其他机器访问,需要配置远程访问:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '111111' WITH GRANT OPTION;
使用远程工具测试一下:
至此搭建mysql-5.7.28版本就完成了
12.一些常用命令
service mysqld start #启动
service mysqld stop #关闭
service mysqld restart #重启
service mysqld status #查看运行状态
centos7安装mysql-5.7.28的更多相关文章
- CentOS7安装mysql提示“No package mysql-server available.”
针对centos7安装mysql,提示"No package mysql-server available."错误,解决方法如下: Centos 7 comes with Mari ...
- [CentOs7]安装mysql(2)
摘要 之前安装过一次mysql,最后配置,发现在本地无法连接,重启服务的时候一直卡在那里不动,感觉是安装的过程出问题,最后没办法还是卸载了,然后重新安装一下. [CentOs7]安装mysql Mys ...
- centos7安装mysql
centos7安装mysql 1 查找系统是否安装了myql rpm -q mysql mysql-server1.1如果安装了.就删除 sudo yum -y remove mysql mysql- ...
- centos7安装mysql(yum)
centos7安装mysql(yum) ----安装环境----依赖安装----检查mysql是否已安装----安装----验证是否添加成功----选择要启用的mysql版本----通过Yum安装my ...
- CentOS7安装MySQL的方法之通用二进制格式
CentOS7安装MySQL的方法之通用二进制格式
- CentOS7安装MySQL的方法之RPM包方式
CentOS7安装MySQL的方法之RPM包方式
- centos7安装Mysql爬坑记录
centos7安装Mysql爬坑记录 查看是否已安装 使用下列命令查看是否已经安装过mysql/mariadb/PostgreSQL 如果未安装,不返回任何结果(ECS的centos镜像默认未安装 ...
- Centos7 安装mysql服务器并开启远程访问功能
大二的暑假,波波老师送了一个华为云的服务器给我作测试用,这是我程序员生涯里第一次以root身份拥有一台真实的云服务器 而之前学习的linux知识在这时也派上了用场,自己的物理机用的是ubuntu系统, ...
- [CentOS7]安装mysql遇到的问题
摘要 在安装mysql的时候,遇到了一些问题,这里列出所遇到的问题. yum list mysql-server 在使用命令yum list mysql-server安装mysql的时候,遇到如图所示 ...
- CentOS7安装mysql数据库
安装完Centos7,迫不急待的想安装mysql数据库,却没想到走了很多弯路,后来经过查资料,才知道了在Centos7中用MariaDB代替了mysql数据库. 准确来说,本文的标题有点误导的意思,本 ...
随机推荐
- DEVOPS技术实践_10:安装部署Artifactory
需要一种机制去存储所有的二进制代码(build,packages,third-party plugins等)到类似于版本控制系统的系统. 像Git,SVN存储代码,它们存储的往往是源代码,不是二进制文 ...
- zabbix脚本监控mysql
Zabbix监控mysql 1.1 客户端配置 1.1.1 安装客户端包 yum -y install unixODBC rpm -ivh zabbix-agent--.el6.x86_64.rpm ...
- POJ3252 Round Numbers 题解 数位DP
题目大意: 求区间 \([x,y]\) 范围内有多少数的二进制表示中的'0'的个数 \(\ge\) '1'的个数. 解题思路: 使用 数位DP 解决这个问题. 我们设状态 f[pos][num0][n ...
- LEFT函数使用
详解:LEFT函数用于从一个文本字符串的第一个字符开始返回指定个数的字符 1.提取A2单元格从左往右2位字符 2.函数使用用途: LEFT函数用于从一个文本字符串的第一个字符开始返回指定个数的字符 语 ...
- OpenLayers4 隐藏(hide)Feature
需求: 需要将同一图层的要素进行分类显示和隐藏(类似于图层控制) 方法: 使用setStyle方法将Feature的样式设置为null. 环境: win10.google chrome.OL 4.3 ...
- The command '/bin/sh -c unzip -o php-7.2.23-src.zip' returned a non-zero code: 1
Dockerfile 内容 #centos7 nginx php redis inotify FROM centos:7 MAINTAINER INFOBIRD RUN yum -y update & ...
- Java多线程的创建(二)
前言: 虽然java的API中说创建多线程的方式只有两种(There are two ways to create a new thread of execution),分别是继承Thread类创建和 ...
- Windows10内嵌Ubuntu子系统初始化设置
第一次启动 重启ubuntu Since Windows 10 version 1803, closing all WSL terminal windows won't kill background ...
- python 遍历文件夹下的所有文件
基础 import os # 遍历文件夹 def walkFile(file): for root, dirs, files in os.walk(file): # root 表示当前正在访问的文件夹 ...
- pycharm 安装vue
1.设置JS为ES6 2.安装vue.js 3.重启pycharm 4.检查