Window/Linux下Mysql的安装步骤

时间:2023-03-08 19:57:18

Windows下Mysql安装教程

首先讲一下Windows环境下安装Mysql,我使用的安装包版本是mysql-8.0.26-winx64

下载地址:MySQL下载

1.点击上面的下载地址得到zip压缩包

Window/Linux下Mysql的安装步骤

Window/Linux下Mysql的安装步骤

2. 解压到要安装的目录

我这里是D:\Mysql\mysql-8.0.26\bin

Window/Linux下Mysql的安装步骤

3. 添加环境变量

我的电脑=>属性=>高级系统设置=>环境变量=>选择path编辑新建=>将第二步中的地址添加进去。

Window/Linux下Mysql的安装步骤

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目录,输入以下命令

Window/Linux下Mysql的安装步骤

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 '你的密码';

Window/Linux下Mysql的安装步骤

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)

Window/Linux下Mysql的安装步骤

点击下图红框所示:

Window/Linux下Mysql的安装步骤

复制下载文件的全名:mysql80-community-release-el7-3.noarch.rpm

Window/Linux下Mysql的安装步骤

下载和安装MySQL源

[root@localhost ~]# wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

Window/Linux下Mysql的安装步骤

如果显示wget未找到命令,则需要先安装wget:

yum -y install wget

然后再次执行上面命令

安装mysql源

Window/Linux下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.*"

Window/Linux下Mysql的安装步骤

选择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

Window/Linux下Mysql的安装步骤

启动成功

停止

[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

Window/Linux下Mysql的安装步骤

2、使用tar.xz安装

1.删除旧的,操作如上
2.下载mysql对应安装包
官网下载:历史版本下载
下载好后通过xftp上传至虚拟机

Window/Linux下Mysql的安装步骤

或者直接在虚拟机上使用命令进行下载:

[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初始化操作

Window/Linux下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

Window/Linux下Mysql的安装步骤

shutdown -r now 重启下服务器或者 source /etc/profile 均可使环境变量生效

10.系统配置

Window/Linux下Mysql的安装步骤

至此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';

Window/Linux下Mysql的安装步骤

12.关闭防火墙
允许远程登录

	# firewall防火墙
systemctl status firewalld
# 查看转态
firewall-cmd --state
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
#注意分清楚linux的版本 命令会有所不同
#查看防火墙规则
firewall-cmd --list-all

远程连接

远程连接时报错

Window/Linux下Mysql的安装步骤

原因

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

Window/Linux下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,否则谁都可以登录了。

 至此,所有的配置都安装完毕啦,如果你觉得有用,点个赞吧!

如果您看了本篇博客,觉得对您有所收获,请点击右下角的 [推荐];

如果您想转载本博客,请注明出处;

如果您对本文有意见或者建议,欢迎留言;

感谢您的阅读,请关注我的后续博客。