一篇文章教会你如何在不同环境下安装Mysql
一篇文章教会你如何在不同环境下安装Mysql
安装之前先确保没有MySQL服务正在运⾏,建议在没有安装过MySQL的机器上进⾏全新的安装
在Windows下安装MySQL数据库
安装过程
安装程序下载地址:https://dev.mysql.com/downloads/
历史版本可以在此处下载
这里选择全量包或者安装包都可
这里以全量包为例,下载完毕后打开,选择Custom,单击Next
根据需求添加,我这里只添加mysql servers
单击选项修改路径
下面next到设置密码,再单击下一步
设置数据库名称和开机自启
安装完成
环境变量配置
找到你修改的安装路径,复制路径地址
如此处为 E:\program\mysql\bin
打开环境变量设置在Path
中添加该路径即可
验证安装
打开Windows PowerShell验证是否安装成功
输入mysql --version
回车,提示如下即安装成功
输入mysql -uroot -p
进行登录验证,如下图即为安装成功
在CentOS下安装MySQL数据库
确认当前的系统版本
登录系统并切换⾄root账号,否则执行命令时需要⽤sudo
命令,并按提示输入密码
在终端中运行以下命令,查看系统版本。如下所示,当前系统版本为CentOS Linux release 7.9.2009
[root@Centos7 ~]# cat /etc/redhat-release
添加 MySQL Yum 源
访问MySQL开发者专区https://dev.mysql.com/downloads/repo/yum
注意对应的版本
发布包命名规则:
{mysql80}-community-release-*{platform}*-*{version-number}*.noarch.rpm
{mysql80}:MySQL版本号
{platform}:平台(系统)号,⽤来描述系统的版本
{version-number}:MySQL仓库配置RPM包的版本号
举个例子:
mysql80-community-release-el7-17.noarch.rpm
mysql80: MySQL版本号,默认是MySQL8.0版本
el7 : 其中el 是 Enterprise Linux的编写,7表⽰ Linux⼤版本号,⽐如el6 表⽰ Linux6, el7表⽰
Linux7, e8表⽰Linux8, el9表⽰Linux9, 'fc' 则表⽰ Fedora
el7-17:表⽰MySQL仓库配置RPM包的第17次更新
选择⽅式:
针对当前演示系统版本Linux7,以及我们要安装的MySQL数据库版本8.0,选择对应RPM包的最近⼀次更新下载即可
其他版本:
如果默认下载⻚⾯没有你所需要的RPM包,可以通过http://repo.mysql.com/查找
下载后上传到Linux服务器:
安装 rz 插件以⽀持拖拽上传
yum -y install lrzsz
安装发布包:
在终端执行:yum -y install mysql80-community-release-el7-17.noarch.rpm
通过以下命令检查是否已成功添加 MySQL Yum 源
yum repolist enabled | grep mysql.*-community
[root@Centos7 ~]# yum repolist enabled | grep mysql.*-community
mysql-connectors-community/x86_64 MySQL Connectors Community 227
mysql-tools-community/x86_64 MySQL Tools Community 100
mysql80-community/x86_64 MySQL 8.0 Community Server 426
选择发布系列
在终端执⾏ yum repolist all | grep mysql
mysql80-community/x86_64、mysql-connectors-community/x86_64、mysql-tools community/x86_64
为启用状态
[root@Centos7 ~]# yum repolist all | grep mysql
mysql-cluster-7.5-community/x86_64 MySQL Cluste disabled
mysql-cluster-7.5-community-source MySQL Cluste disabled
mysql-cluster-7.6-community/x86_64 MySQL Cluste disabled
mysql-cluster-7.6-community-source MySQL Cluste disabled
mysql-cluster-8.0-community/x86_64 MySQL Cluste disabled
mysql-cluster-8.0-community-debuginfo/x86_64 MySQL Cluste disabled
mysql-cluster-8.0-community-source MySQL Cluste disabled
mysql-cluster-innovation-community/x86_64 MySQL Cluste disabled
mysql-cluster-innovation-community-debuginfo/x86_64 MySQL Cluste disabled
mysql-cluster-innovation-community-source MySQL Cluste disabled
mysql-connectors-community/x86_64 MySQL Connec enabled: 227 #启⽤
mysql-connectors-community-debuginfo/x86_64 MySQL Connec disabled
mysql-connectors-community-source MySQL Connec disabled
mysql-innovation-community/x86_64 MySQL Innova disabled
mysql-innovation-community-debuginfo/x86_64 MySQL Innova disabled
mysql-innovation-community-source MySQL Innova disabled
mysql-tools-community/x86_64 MySQL Tools enabled: 100 #启⽤
mysql-tools-community-debuginfo/x86_64 MySQL Tools disabled
mysql-tools-community-source MySQL Tools disabled
mysql-tools-innovation-community/x86_64 MySQL Tools disabled
mysql-tools-innovation-community-debuginfo/x86_64 MySQL Tools disabled
mysql-tools-innovation-community-source MySQL Tools disabled
mysql-tools-preview/x86_64 MySQL Tools disabled
mysql-tools-preview-source MySQL Tools disabled
mysql57-community/x86_64 MySQL 5.7 Co disabled
mysql57-community-source MySQL 5.7 Co disabled
mysql80-community/x86_64 MySQL 8.0 Co enabled: 426 #启⽤
mysql80-community-debuginfo/x86_64 MySQL 8.0 Co disabled
mysql80-community-source MySQL 8.0 Co disabled
安装
在终端执行:yum install -y mysql-community-server
启动 MySQL 服务器:systemctl start mysqld
查看MySQL 服务状态:systemctl status mysqld
可以使用 systemctl [stop| start| restart| status] mysqld, 命令对MySQL服务进行[停止| 启动|重启|查看服务状态]操作
开启自启动:systemctl enable mysqld
查看状态:systemctl list-unit-files|grep mysqld
登录
登录MySQL:
首次安装成功,MySQL把root用户的默认密码保存在错误日志中
可以使用grep 'temporary password' /var/log/mysqld.log
进行查看
使用密码登录:mysql -uroot -p
修改密码:
validate_password
组件是默认安装的,实现的默认密码策略,要求密码至少包含1个大写字母、1个小写字母、1个数字和1个特殊字符,密码总⻓度⾄少为8个字符。
密码策略分为 LOW
、 MEDIUM
(默认)和 STRONG
,分别⽤0,1(默认),2表示。0表示只校验密码长度,长度最小为8,所以以后要设置简单密码时还需要修改密码的长度限制。他们分别⽤两个系统变量validate-password.policy
和validate_password.length
表示
在MySQL客户端运行以下命令查看当前设置
mysql> show variables like 'validate_password.policy'; #查看当前密码策略
mysql> show variables like 'validate_password.length'; #查看当前密码⻓度限制
如果我们要在开发环境设置如666666的简单密码那么就要修改默认密码策略,
我们只需要设置validate-password.policy
和validate_password.length
对应的值即可
在终端执行以下命令:
mysql> set global validate_password.policy=0; #策略设置为LOW
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password.length=4; #密码⻓度最少为4位(系统限制不能⼩于4位)
Query OK, 0 rows affected (0.00 sec)
重新查看系统变量的值:
mysql> show variables like 'validate_password.policy';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| validate_password.policy | LOW | # LOW级
+--------------------------+-------+
1 row in set (0.00 sec)
mysql> show variables like 'validate_password.length';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| validate_password.length | 4 | # 最⼩⻓度为4
+--------------------------+-------+
1 row in set (0.00 sec)
设置新密码 :
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '666666';
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Qs1!Ed3#';
Query OK, 0 rows affected (0.03 sec)
恢复密码策略与密码长度限制并检查:
# 恢复密码策略
mysql> set global validate_password.policy=1;
mysql> set global validate_password.length=8;
# 查看设置是否成功
mysql> show variables like 'validate_password.policy';
mysql> show variables like 'validate_password.length';
在ubuntu下安装MySQL数据库
查看操作系统版本
输入命令lsb_release -a
,此处为Ubuntu 20.04.6 LTS
添加 MySQL APT 源
访问下载页面并下载发布包
**下载地址:**https://dev.mysql.com/downloads/repo/apt,也可以通过http://repo.mysql.com/查找并下载
安装发布包
发布包的命名格式:mysql-apt-config_*w.x.y-z*_all.deb
可以在支持APT打包工具的Debian
和Ubuntu
系统中使用相同的发布包
切换到root账户或使用sudo命令,进入root的home目录,列出文件列表
把刚才下载的发布包拖进去
执行安装命令:
dpkg -i mysql-apt-config_0.8.33-1_all.deb
从MySQL APT 源更新包信息
apt-get update
安装MySQL
apt-get install mysql-server
回车后会提示输入密码
再次确认密码
选择密码加强回车
查看MySQL状态
systemctl status mysql #查看mysql服务状态
开启自启动
systemctl enable mysql #设置自启动
systemctl list-unit-files|grep mysql #查看状态
正常有前两个提示即可
登录MySQL
mysql -uroot -p
指定套接字路径登录 mysql -u root -p --socket=/var/run/mysqld/mysqld.sock