折腾了半天,终于把mysql8.0装好了
一、Windows10系统下安装
该文参考了菜鸟教程的 mysql教程
1.下载mysql安装程序
可以下载msi安装版,也可以下载zip版,我这里下载的是zip版
https://dev.mysql.com/downloads/mysql/
2.解压文件
- 把你下载下来的文件解压到你想要安装的位置 我这里解压到:D:\Program Files\mysql-8.0.26-winx64
- 然后设置环境变量,右键点击我的电脑----属性----高级系统设置----高级----环境变量----在下面的系统变量里找到Path----编辑,然后新建一个值,输入D:\Program Files\mysql-8.0.26-winx64\bin,然后一路确定就好。
注:以下步骤若出现问题的话,可以尝试在 D:\Program Files\mysql-8.0.26-winx64 目录下新建 my.ini 文件,然后输入以下内容保存,重启mysql服务再试。(因为我在安装过程中出了很多小问题,后面我也不记得my.ini这个文件起作用了没)
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\\Program Files\\mysql-8.0.26-winx64
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
# datadir=D:\\web\\sqldata
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
# character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
# default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
3.初始化数据,安装服务
- 以管理员身份运行cmd,然后切换到mysql的bin目录
- cd D:\Program Files\mysql-8.0.26-winx64
- mysqld --initialize --console 初始化数据库,初始化后会生成默认root密码,这个最好记住,免得后面改密码麻烦
- mysqld install 安装命令(安装mysql服务)
- net start mysql 启动mysql,停止mysql的命令是 net stop mysql
4.登录mysql,修改root密码
- 打开cmd,输入登录命令,mysql -h ip地址 -P 端口号 -u 用户名 -p 数据库名,端口号 数据库名可以省略
- mysql -h 127.0.0.1 -u root -p 回车,然后输入密码就可以登录了
- alter user ‘root’@‘localhost’ identified by ‘新密码’; 修改root密码
- ok,至此就安装完了
5.其他情况
(1)忘记了root密码怎么办?可以免密登录
- net stop mysql 首先停止mysql服务
- mysqld --console --skip-grant-tables --shared-memory 输入这个命令,免验证开启mysql服务
- mysql 重新打开一个cmd窗口,现在直接输入mysql就可以登录进mysql了
- flush privileges; 刷新下权限
- alter user ‘root’@‘localhost’ identified by ‘新密码’; 然后修改密码就ok
(2)让用户可以远程登录
默认情况下,mysql只能在本地登录,mysql的用户信息都是放在mysql数据库中的user表中的,只要修改用户的host字段值为%就好了,该字段的值默认是localhost,代表只能本地登录,修改为%后代表任何ip都能登录
- 首先登录mysql数据库后,然后切换到mysql数据库
use mysql
- 然后设置host字段的值
update user set host = '%' where user = 'root';
二、Linux系统下安装mysql,这里以CentOS 8.2为例
1.安装mysql
下载安装包
Linux也是有各种安装包可下载,这里就下载yum安装包
顺便说一下,CentOS
是Red Hat Enterprise Linux
依照开源规定所释放出的源代码所编译成的,所以下载的时候选择 Red Hat Enterprise Linux 8 / Oracle Linux 8 (Architecture Independent), RPM Package
版本就好
wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
由于系统默认安装的mysql版本比较低,以防万一,先尝试删除系统默认安装的mysql
yum remove mysql-server
安装刚刚下载的rpm包, 这里有个小技巧,输入rpm -ivh mysql后一般按tab键就会自动补全
rpm -ivh mysql80-community-release-el8-1.noarch.rpm
更新软件,这一步不知道可不可以省略,我安装的时候是执行了的
yum update
安装mysql服务
yum install mysql-server
设置权限
chown -R mysql:mysql /var/lib/mysql
初始化mysql
mysqld --initialize --console #这里如果出错 就把--console去掉
ok 安装完成,然后就可以启动mysql了
systemctl start mysqld
2.其他问题
- 修改root账户密码
# 登录mysql
mysql -h 127.0.0.1 -u root -p
# 切换到mysql数据库
use mysql
# 修改root密码
alter user 'root'@'localhost' identified by '新密码'
- 忘记root账户密码了,重置root账户密码
首先停止mysql服务
systemctl stop mysqld
然后打开mysql的配置文件,在 [mysqld]下加入skip-grant-tables,保存
vim /etc/my.cnf # 打开mysql的配置文件
然后重新启动mysql服务
systemctl start mysqld
然后直接输入mysql就可以登录到本地的mysql数据库去了
mysql
之后改密码的方法就和windows差不多了
# 切换到mysql数据库
use mysql
# 刷新权限
flush privileges;
# 修改密码
alter user 'root'@'localhost' identified by '新密码';
修改后把 /etc/my.cnf 文件里面加的内容去掉,然后重启mysql服务,flush privileges;刷新权限就ok