Window/Linux下Mysql的安装步骤
Windows下Mysql安装教程
首先讲一下Windows环境下安装Mysql,我使用的安装包版本是mysql-8.0.26-winx64
下载地址:MySQL下载
1.点击上面的下载地址得到zip压缩包
2. 解压到要安装的目录
我这里是D:\Mysql\mysql-8.0.26\bin
3. 添加环境变量
我的电脑=>属性=>高级系统设置=>环境变量=>选择path编辑新建=>将第二步中的地址添加进去。
4.选择是否要更改端口号
若要更改,可添加一个my.ini配置文件。D:\Mysql\mysql-8.0.26要换成自己安装的目录
[mysql]
# 设置mysql客户端默认字符编码形式
default-character-set=utf8mb4
[mysqld]
#设置端口号,默认3306
port = 3306
# 设置mysql的安装目录
basedir=D:\Mysql\mysql-8.0.26\
# 设置mysql数据库的数据存放目录
datadir=D:\Mysql\mysql-8.0.26\data\
# 设置最大连接数
max_connections=200
# 允许连接失败的次数
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
5.安装MySQL服务
右键Windows桌面左下角,选择Windows PowerShell(管理员)(A),或者win+s 输入cmd,启动管理员模式下的cmd,并将路径切换至mysql安装目录下的bin目录,输入以下命令
d:
cd D:\Mysql\mysql-8.0.26\bin
mysqld -install
<# 如果之前安装过MySQL,请先停止MySQL并且删除旧的MySQL #>
net stop mysql
sc delete mysql
<# 再执行如下命令#>
mysqld install
mysqld --initialize --user=mysql --console
<#如果执行成功 ,最后一段末尾会出现初始密码 然后启动MySQL#>
net start mysql
mysql -u root -p
<#然后使用上一步最后一行的密码进行登录,如需修改密码,可执行以下命令 #>
alter user user() identified by "123456";
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘新密码’;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
6. 重启MySQL即可正常使用
这里重启要用以管理员身份运行的cmd
退出mysql管理界面
exit
停止mysql服务
net stop mysql
开始mysql服务
net start mysql
Linux下MySql安装教程
几种常见的安装方式
- 源码编译
- 压缩包解压(一般为tar.gz)
- 编译好的安装包(RPM、DPKG等)
- 在线安装(YUM、APT等)
以上几种方式的便携性依次增加,但通用性一次下降,比如直接下载压缩包进行解压,这种方式一般需要自己做一些额外的配置工作,但只要掌握了方法,各个平台基本都适用,YUM虽然简单,但是平台受限,网络受限,必要的时候还需要增加一些特定YUM源。
几种安装方式最好都能掌握,原则上能用简单的就用简单的:YUM>RPM>tar.gz>源码
1、使用YUM进行安装
首先查看是否已经安装了MySQL
[root@localhost ~]# rpm -qa|grep mysql #无输出说明没有安装
打开网址:MySQL Yum存储库找到对应linux的版本进行下载
查看自己的版本:
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
点击下图红框所示:
复制下载文件的全名:mysql80-community-release-el7-3.noarch.rpm
下载和安装MySQL源
[root@localhost ~]# wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
如果显示wget未找到命令,则需要先安装wget:
yum -y install wget
然后再次执行上面命令
安装mysql源
检查是否安装成功:
执行成功后会在/etc/yum.repos.d//目录下生成两个repo文件mysql-community.repo及 mysql-community-source.repo
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls -l
总用量 12
-rw-r--r--. 1 root root 2523 6月 16 2018 CentOS-Base.repo
-rw-r--r--. 1 root root 2076 4月 25 2019 mysql-community.repo
-rw-r--r--. 1 root root 2108 4月 25 2019 mysql-community-source.repo
[root@localhost yum.repos.d]#
查看mysql相关资源
yum repolist enabled | grep "mysql.*-community.*"
选择mysql版本
使用MySQL Yum Repository安装MySQL,默认会选择当前最新的稳定版本
- 使用命令:yum repolist all | grep mysql,查看当前yum repolist的所有版本
- 切换版本
[root@localhost ~] sudo yum-config-manager --disable mysql80-community
[root@localhost ~] sudo yum-config-manager --enable mysql57-community
安装mysql
[root@localhost ~]# sudo yum install mysql-community-server
该命令会安装MySQL服务器 (mysql-community-server) 及其所需的依赖、相关组件,包括mysql-community-client、mysql-community-common、mysql-community-libs等。安装时间会比较长。
启动
[root@localhost ~]# systemctl start mysqld.service
[root@localhost ~]# systemctl status mysqld.service
启动成功
停止
[root@localhost ~]# systemctl stop mysqld.service
重启
[root@localhost ~]# systemctl restart mysqld.service
修改密码及登录
初始密码
MySQL第一次启动后会创建超级管理员账号root@localhost,初始密码存储在日志文件中:
[root@localhost ~]# grep 'temporary password' /var/log/mysqld.log
2020-12-06T07:32:41.399112Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Nd<-p!Fxt6A8
修改默认密码
# 先进行登录
[root@localhost ~]# mysql -uroot -p
Enter password:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
#密码太弱
解决方法如下:
使用复杂密码,MySQL默认的密码策略是要包含数字、字母及特殊字符;
如果只是测试用,不想用那么复杂的密码,可以修改默认策略,即validate_password_policy(以及validate_password_length等相关参数),使其支持简单密码的设定,具体方法可以参考:设置密码策略;
修改配置文件/etc/my.cnf,添加validate_password=OFF,保存并重启MySQL
修改报错后重启报错解决可参考百度
设置编码
查看编码
mysql> SHOW VARIABLES LIKE 'character%';
设置编码
编辑/etc/my.cnf,[mysqld]节点增加以下代码
[mysqld]
character_set_server=utf8
init-connect='SET NAMES utf8'
设置开机启动
[root@localhost ~]# systemctl enable mysqld
[root@localhost ~]# systemctl daemon-reload
关闭防火墙
允许远程登录
# firewall防火墙
systemctl status firewalld
# 查看转态
firewall-cmd --state
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
#注意分清楚linux的版本 命令会有所不同
#查看防火墙规则
firewall-cmd --list-all
删除mysql
检查mariadb
[root@localhost ~]# rpm -qa|grep mariadb
如无则跳过下面一条
删除mariadb
[root@localhost ~]# rpm -e --nodeps mariadb-server
[root@localhost ~]# rpm -e --nodeps mariadb
[root@localhost ~]# rpm -e --nodeps mariadb-libs
检查mysql
[root@localhost ~]# rpm -qa|grep mysql
mysql-community-client-8.0.22-1.el7.x86_64
mysql-community-common-8.0.22-1.el7.x86_64
mysql-community-client-plugins-8.0.22-1.el7.x86_64
mysql-community-libs-compat-8.0.22-1.el7.x86_64
mysql80-community-release-el7-3.noarch
mysql-community-libs-8.0.22-1.el7.x86_64
mysql-community-server-8.0.22-1.el7.x86_64
[root@localhost ~]#
删除mysql
[root@localhost ~]# rpm -e --nodeps xxx
2、使用tar.xz安装
1.删除旧的,操作如上
2.下载mysql对应安装包
官网下载:历史版本下载
下载好后通过xftp上传至虚拟机
或者直接在虚拟机上使用命令进行下载:
[root@localhost ~]# wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.15-linux-glibc2.12-i686.tar
3.安装和配置
MySQL依赖libaio库
[root@localhost ~]# yum install libaio
4.创建mysql用户
不需要登录的一个系统账号,启动MySQL服务时会使用该账号
[root@localhost mysql]# groupadd mysql
[root@localhost mysql]# useradd -r -g mysql -s /bin/false mysql
5.解压并创建链接
[root@localhost mysql]# tar zxvf /root/mysql/mysql-8.0.15-linux-glibc2.12-i686.tar.gz
或者
[root@localhost mysql]# tar -xvf /root/mysql/mysql-8.0.15-linux-glibc2.12-i686.tar
或者
[root@localhost mysql]# tar -xvJf /root/mysql/mysql-8.0.15-linux-glibc2.12-i686.tar.xz
修改文件名
[root@localhost mysql]# mv mysql-8.0.15-linux-glibc2.12-i686 mysql
将文件移动到/usr/local/
[root@localhost mysql]# cp mysql-8.0.15-linux-glibc2.12-i686.tar.xz /usr/local/
6.修改/usr/local/mysql 目录为mysql用户
cd /usr/local/mysql //进入/usr/local/mysql 目录
[root@localhost mysql]# cd /usr/local/mysql //进入/usr/local/mysql 目录
[root@localhost mysql]# chown -R mysql:mysql ./
7.mysql初始化操作
8.启动服务
[root@localhost mysql]# cd support-files
[root@localhost support-files]# ./mysql.server start
Starting MySQL.Logging to '/usr/local/mysql/data/localhost.localdomain.err'.
.. SUCCESS!
success表示已经启动成功。
9.配置mysql环境
[root@localhost ~]# vi /etc/profile
xport MYSQL_HOME=/usr/local/mysql
export MYSQL_PATH=${MYSQL_HOME}/bin:${MYSQL_HOME}/lib
export PATH=$PATH:/usr/local/mysql/bin
shutdown -r now 重启下服务器或者 source /etc/profile 均可使环境变量生效
10.系统配置
至此mysql就安装成功了
11.修改初始密码
[root@localhost ~]# mysql -uroot -p
Enter password: //这里输入刚刚初始化操作时的初始密码
mysql> alter user 'root'@'localhost' identified by '你的新密码';
Query OK, 0 rows affected (0.02 sec)
#设置允许远程登录
mysql> update user set user.Host='%' where user.User='root';
12.关闭防火墙
允许远程登录
# firewall防火墙
systemctl status firewalld
# 查看转态
firewall-cmd --state
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
#注意分清楚linux的版本 命令会有所不同
#查看防火墙规则
firewall-cmd --list-all
远程连接
远程连接时报错
原因
mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password
#更改加密方式
mysql> ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
Query OK, 0 rows affected (0.01 sec)
#更新用户密码
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
未找到匹配的参数: mysql-community-server。错误:没有任何匹配。的错误 安装mysql之前要先禁用默认的mysql模块:
sudo yum module disable mysql
附录
如果上面的方式不能修改可以使用下面安全模式修改root:
打开/etc/my.cnf文件,加上一行skip-grant-tables,表示跳过安全检查(即登录时无需密码)。直接用mysql -uroot登录,即可登录成功。切换到mysql库,查看user表结构,需要注意的是5.7以上版本已经没有了Password字段,取而代之的是authentication_string字段。执行sql语句修改密码:update user set authentication_string='密码' where User='root'; 或者5.6及以下版本使用:update user set Password='密码' where User='root'; 然后FLUSH PRIVILEGES即可。
注意:修改成功后,要删掉配置文件中的skip-grant-tables,否则谁都可以登录了。
至此,所有的配置都安装完毕啦,如果你觉得有用,点个赞吧!
如果您看了本篇博客,觉得对您有所收获,请点击右下角的 [推荐];
如果您想转载本博客,请注明出处;
如果您对本文有意见或者建议,欢迎留言;
感谢您的阅读,请关注我的后续博客。
Window/Linux下Mysql的安装步骤的更多相关文章
- Linux下Mysql的安装步骤
(1).下载安装包 https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.23-linux-glibc2.12-x86_64.tar [roo ...
- .Neter玩转Linux系列之六:Linux下MySQL的安装、配置、使用
一.Linux安装MySQL (1)下载安装包:https://dev.mysql.com/downloads/mysql/ (2)解压并安装 命令:tar zxvf 文件名 解压完成之后,重名一下文 ...
- linux下mysql的安装
一.下载 http://dev.mysql.com/downloads/mysql/ 选择对应的版本,这里选择“Linux-Generic” 以64位系统为例,这里需要下载如下两个文件: MySQL- ...
- linux下Mysql 的安装、配置、数据导入导出
MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),虽然功能未必很强大,但因它的免费开源而广受欢迎. 这次,接着上一篇<CentOs minimal安装和开发环境部署>,讲下L ...
- Linux中MySQL二进制安装步骤
MySQL二进制安装步骤 安装依赖环境 [root@node3 ~]# yum -y install libaio 将mysql-5.7.26-linux-glibc2.12-x86_64.tar.g ...
- linux 下mysql的安装,并设置必要的密码
首先,我使用的是redhat linux ,版本号为: [root@localhost init.d]# cat /proc/version Linux version - (bhcompile@po ...
- (0.2)linux下Mysql的安装配置与管理入门(目录篇)
本章学习内容: 1.基于Linux平台的Mysql项目场景介绍 1.1.互联网各类网站.购物网站.门户网站.博客系统.IDC,云平台,VPS,虚拟主机空间,论坛,嵌入式. 2.mysql数据库运行环境 ...
- 自学linux——13.Linux下mysql的安装
MySQL数据库 1.数据库联系 2.软件安装 (1)源码包安装 优点:开源,可以修改源代码编译安装,更加适合自己的系统,稳定高效 缺点:安装步骤较多,容易出错编译过程时间较长 常用语法: #tar ...
- Linux下mysql的安装和使用(C语言)
1 mysql的安装 我使用的ubuntu在线安装,非常简单,命令为: sudo apt-get install mysql-client mysql-server 2 mysql命令集合 网络太多了 ...
随机推荐
- linux 常用清空文件方法
1.vim 编辑器 vim /tmp/file :1,$d 或 :%d 2.cat 命令 cat /dev/null > /tmp/file
- lucene的索引查询
package com.hope.lucene;import org.apache.lucene.document.Document;import org.apache.lucene.document ...
- 【Jenkins系列】-备份机制
Jenkins是主从模式,从节点可以做集群.负载,从而实现从节点的高可用,但是主节点是单节点,一旦主节点宕机,会导致Jenkins服务不可用.Jenkins主节点本身是不支持集群的,需要通过其他变通方 ...
- Mysql配置文件 基本设置
[mysqld] #MySQL启动用户 user = mysql #设置mysql的安装目录 basedir=/usr/local/mysql #mysql.sock存放目录 socket=/var/ ...
- Docker从入门到精通(五)——Dockerfile
Dockerfile 简单来说就是一个包含用于组合镜像的命令的文本文档,Docker 通过读取 Dockerfile 中的指令就可以按步骤生成镜像,那么在制作镜像之前,我们先了解一下镜像的原理. 1. ...
- ASP.NET VS 调试提示:指定的端口正在使用中,建议切换到xxx之外并大于1024的端口
问题描述 使用 Visual Studio 开发 ASP.NET 网站的过程中,突然提示端口被占用: 解决方式 在启动项目上右键→属性,切换到 Web .直接修改服务器栏目里面的端口号,解决!
- Docker从入门到精通(七)——容器数据共享
什么是容器数据共享?简单来说就是容器与容器之间数据共享,容器与宿主机数据共享. 1.为什么需要数据共享? ①.数据持久化 比如我们有一个MySQL集群,通过容器启动,那么项目运行过程中的数据是保存在容 ...
- 一定成功 k8s 安装helm v2.17 基本命令
一.下载helm安装脚本 1.1 介绍 Helm是Kubernetes的包管理器. 其实就是管理了一推配置文件,ds,configmap,deployment......,一类规则. 就类似: yum ...
- Java 常用类库一,main方法传参String[] args;获取输入Scanner ;hasNext();hasNextInt()
1. main方法传参 package com.zmd.common_class_libraries; /** 给mian方法传参测试 */ public class MainArgsTest { p ...
- git修改账号密码
查看当前用户名和邮箱 git config user.name git config user.email 修改 git config --global user.name "新用户名&qu ...