资料参考:一般是网络查询,但需要注意在MySQL官网上下载的版本,google的时候最好精确到版本,因为不同版本的安装方式可能有所不同,而这些“不同”就会造成一些“坑”!本文的版本是最新版本:mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz。故在网络上google的时候查找5.7.21版本的安装资料,不要随便一篇文章就拿来参考!
先搭建一个虚拟机再玩:https://www.linuxidc.com/Linux/2017-04/143102.htm(虚拟机镜像最好使用Desktop版会比较少点坑。。)
安装过程大同小异,只不过Linux环境的差异会使你遇到各种意想不到的问题,下面仅针对我此次的安装过程来说明(具体问题具体解决)。
1. 建一个存放上传mysql安装tar包的目录
cd /home
root@ubuntu:/home# mkdir security
chmod 777 /home/security/
2. 使用WinSCP工具上传mysql的安装tar包到/home/security目录
3. 解压该tar包,并将解压后的目录重命名为mysql
tar -zxvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.21-linux-glibc2.12-x86_64 mysql
移动到/usr/local目录下:
mv mysql /usr/local
4. 检查Linux系统之前是否装过mysql,若装过,需要改端口号或者将之前的服务停掉,相关目录删掉
ps -ef|grep mysql
5. 创建用户组mysql,创建用户mysql并将其添加到用户组mysql中,并赋予读写权限
groupadd mysql
useradd -r -g mysql mysql
chown -R mysql mysql/
chgrp -R mysql mysql/
6. 先检查有没有安装依赖的包libaio
rpm –qa | grep libaio1
如果没有需要通过 apt-get install libaio1 libaio-dev来安装
注:这一步可能rpm命令也会没有,通过下面的步骤来进行(会耗费较长时间):
apt-get update
apt-get upgrade
apt-get install <packagename>
(ap-get是ubuntu下的一个软件安装方式,它是基于debain
yum是redhat、centos下的一个软件安装方式,它是基于Linux的,最好先搞清楚自己的Linux系统版本: cat /proc/version)
7. 创建配置文件,保存并退出。
vim /etc/my.cnf
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
port = 3306
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
#不区分大小写
lower_case_table_names = 1
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
max_connections=5000
skip-grant-tables
default-time_zone = '+8:00'
注:3306是默认端口,若之前有安装过mysql服务,则client和mysqld的port都需要改成其他端口如3307,否则初始化的时候会失败。
8. 初始化数据库(比较关键的一步)
#手动编辑一下日志文件(用来记录初始密码以及启动日志的),什么也不用写,直接保存退出
cd /var/log/
vim mysqld.log
:wq
chmod 777 mysqld.log
chown mysql:mysql mysqld.log
初始化命令:/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US
9. 查看初始密码
cat /var/log/mysqld.log |grep 'root@localhost'
如:2018-03-28T12:50:49.180634Z 1 [Note] A temporary password is generated for root@localhost: xj7fWyj(NU!u
10.启动mysql服务
cd /var/run/
mkdir mysqld
chmod 777 mysqld
cd mysqld
vim mysqld.pid
chmod 777 mysqld.pid
chown mysql:mysql mysqld.pid
/usr/local/mysql/support-files/mysql.server start
/usr/local/mysql/bin/mysql -uroot –p’ xj7fWyj(NU!u’(换成第9步的初始密码)
注:-p跟密码之间没有空格,这是个坑!网上好多都有空格.
可以看到:
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.21 MySQL Community Server (GPL)
Copyright (c) 2000, 2018, 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>
11.修改root用户初始密码
由于上面的密码太复杂,修改自己定义的密码,注意5.7.21版本的sql语句是:
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update user set authentication_string=PASSWORD('123456') where User='root';
Query OK, 1 row affected, 1 warning (0.05 sec)
Rows matched: 1 Changed: 1 Warnings: 1
12.设置开机自启动
cd /usr/local/mysql/support-files
cp mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
注:这里chkconfig命令可能又没有。。这样做:
apt-get install sysv-rc-conf
cp /usr/sbin/sysv-rc-conf /usr/sbin/chkconfig
chkconfig mysqld on
之后检查下:
chkconfig –list可发现mysql的服务:
mysqld 2:on 3:on 4:on 5:on
说明成功了。
13.检查mysql服务是否安装成功:
ps -ef|grep mysql
发现:
root 29429 1 0 05:55 pts/17 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/var/run/mysqld/mysqld.pid
mysql 29707 29429 0 05:55 pts/17 00:00:01 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/tmp/mysql.sock --port=3306
root 29776 13540 0 05:56 pts/17 00:00:00 /usr/local/mysql/bin/mysql -uroot -px xxxxxxxxxx
root 30907 28335 0 06:10 pts/19 00:00:00 grep --color=auto mysql
以及3306端口是否开启成功,被MySQL占用:
lsof -i:3306
结果:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 29707 mysql 19u IPv6 293124 0t0 TCP *:mysql (LISTEN)
接下来就可以用navicat连接工具试试了!(目前只有root用户,创建其他账号的过程略)
相关推荐
在Linux环境下安装MySQL 5.7.21的详细步骤如下: 1. **安装包准备**:首先,你需要从MySQL的官方网站或者可靠的第三方源下载安装包。在这个例子中,使用的是`mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz`,你可以...
CENTOS7 上安装 MYSQL5.7.21 流程 在 CentOS7 上安装 MYSQL5.7.21 需要遵循特定的步骤,以便确保安装成功。在本文档中,我们将详细介绍安装过程,包括卸载系统自带的 mariadb-lib、解压缩 MySQL 安装包、修改文件夹...
### CentOS 7 安装 MySQL 5.7.21 的详细步骤 #### 一、前期准备 在开始安装MySQL之前,确保您的CentOS 7系统已经更新至最新版本,并且具备基本的操作权限。 #### 二、卸载可能存在的MariaDB数据库 CentOS 7系统...
根据提供的文件信息,我们可以深入探讨与MySQL 5.7.21在Linux环境下的安装、配置以及使用相关的知识点。以下是对这些方面的详细说明: ### MySQL 5.7.21 版本概述 MySQL 5.7.21是MySQL 5.7系列中的一个版本,它...
在Linux操作系统中安装MySQL 5.7.21是一项关键任务,特别是在服务器环境中,因为MySQL是广泛使用的开源关系型数据库管理系统。以下是详细的安装步骤: 1. **下载MySQL安装包**: 首先,你需要访问MySQL的官方网站...
MySQL 5.7.21 是一个非常重要的数据库管理系统版本,尤其对于那些需要在无互联网环境中部署数据库的用户来说,离线安装文件是必不可少的。本篇将详细讲解如何使用提供的压缩包“MySQL 5.7.21 离线安装文件及方法.rar...
`mysql-community-server-minimal-5.7.21-1.el7.x86_64.rpm` 是一个精简版的MySQL服务器包,包含最小化的功能集,适合资源有限或者只需要基本数据库功能的环境。 通过这个一键安装部署包,用户可以在CentOS 7系统上...
本压缩包“Linux离线安装mysql5.7.zip”包含的是在Linux环境下离线安装MySQL 5.7和Redis 5.0.10所需的相关文件。下面将详细解释如何使用这些文件进行离线安装。 首先,我们来看`libaio-0.3.109-13.el7.x86_64.rpm`...
### MySQL 5.7.21 在 Redhat 企业版中的安装步骤详解 #### 一、准备工作 在开始安装MySQL之前,确保您的Redhat企业版系统满足以下条件: 1. **系统环境准备**:确认系统内没有其他版本的MySQL安装。 2. **下载...
### Linux CentOS离线安装 MySQL Glibc 版/解压版详解 #### 一、环境准备与检查 在开始安装 MySQL 之前,确保你的 CentOS 系统满足以下条件: 1. **确定系统架构**:首先确认你的 CentOS 系统是 32 位还是 64 位...
**在SUSE Linux Enterprise Server 11(SLES11)上安装MySQL 5.5.21:** 1. **解压文件**:首先,使用RAR解压工具解压缩"MySQL-server-5.5.21-1.sles11.x86_64.rar",这将生成一个名为"MySQL-server-5.5.21-1.sles...
对于 Linux 系统,安装通常通过包管理器完成,例如在 Ubuntu 或 Debian 中使用 `sudo apt-get install mysql-server`,在 CentOS 或 RHEL 中使用 `sudo yum install mysql-server`。安装后,使用 `systemctl start ...
在Linux环境下安装MySQL数据库是一项基础但重要的任务,对于任何需要数据库支持的应用或服务都是必要的。以下是一份详细的MySQL安装教程,涵盖了从创建用户和组到配置和启动MySQL服务的全过程。 一、创建安装MySQL...
mv mysql-5.7.21-linux-glibc2.12-x86_64 /usr/local/mysql ``` 3. 初始化MySQL数据目录,并记录生成的临时密码(在输出中查找): ``` /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr...
这个压缩包“mysql7 centos7 redhat 安装包.7z”显然是为在这些平台上安装MySQL 5.7.21版本准备的。下面我们将详细探讨MySQL 5.7在CentOS 7和Red Hat上的安装过程、注意事项以及相关的配置知识。 1. **MySQL 5.7.21...
- **移动并设置权限**:进入 `/usr/local/` 目录后,通过 `mv mysql-5.7.21-linux-glibc2.12-x86_64 mysql` 将解压后的目录重命名为 `mysql`,然后通过 `chown -R mysql:mysql ./` 设置所有文件的所有权为 `mysql:...
5. 完成安装后,通过命令行工具(如Windows的cmd或Linux的终端)启动MySQL服务。 启动MySQL 5.7通常使用系统服务管理命令,例如在Windows上使用`net start MySQL服务名`,在Linux上使用`systemctl start mysql....
对于用户群体,分为MySQL Community Server(社区版)和MySQL Enterprise Server(企业版),前者免费但无官方技术支持,后者提供商业支持并需付费。MySQL的版本命名由主版本号、发行级别和版本号组成,例如mysql-...