mysql8.0快速安装配置教程Ubuntu和Windows
一、mysql介绍
二、Ubuntu安装
2.1 apt安装
- 使用apt进行拉取
sudo apt update
更新apt镜像源
sudo apt install mysql-server
下载mysql
安装完之后默认root的密码是123456 - 一般安装完后,MYSQL服务都会自动启动哦。查看MYSQL是否正常运行
sudo systemctl status mysql
2.2 更新密码(服务器新手必备)
- 利用mysql_secure_installation脚本进行设置密码,MySQL安装附带这个脚本无需另外安装,可以借助它设置我们MYSQL服务器的安全性。
- 调用脚本
sudo mysql_secure_installation
- 第一步:设置VALIDATE PASSWORD 组件:输入Y;
- 第二步:密码设置策略分为三个级别:低0,中1,高2。三个级别密码格式也有不同的要求;
- 第三步:设置MYSQL root用户的密码(下图最下一行显示的是密码的强度。)
- 会要求您删除匿名用户,限制root用户对本地计算机的访问,删除测试数据库并重新加载特权表。所有都y同意就行。
2.3 登录
两种登录进MYSQL的方法:
第一种:利用插件进行身份认证直接登录,无需密码(在MySQL 8.0上,auth_socket默认情况下,root用户通过插件进行身份验证,所以这种方法不需要输入密码直接可以登录)
sudo mysql
第二种:常规输入账号密码登录也是最常用的(推荐)
mysql -u root -p
注意:如果要使用外部程序以root用户身份登录到MYSQL服务器,需要将身份验证方法从auth_socket更改为mysql_native_password。通过在MYSQL服务中运行以下两行命令完成(用了mysql_secure_installation脚本就需要)
mysql > ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你设置的密码';
mysql > FLUSH PRIVILEGES;
如果需要外部程序登录,就不能使用插件认证登录
3.3 常用操作
#查看服务状态
sudo service mysql status
#停止服务
sudo service mysql stop
#启动服务
sudo service mysql start
#重启服务
sudo service mysql restart
#卸载命令
sudo apt purge mysql-*
sudo rm -rf /etc/mysql/ /var/lib/mysql
sudo apt autoremove
sudo apt autoclean
三、Windows安装
3.1 安装
- Choosing a Setup Type:选择第一个Developer Default默认安装
- Select Products:选择自己需要安装的mysql版本,每个版本的mysql都可以安装一个,如果需要安装两个不同版本的mysql则需注意在后面设置端口时不同版本的mysql要设置不同的端口,这样在连接数据库的时候才能根据端口连接到自己需要的数据库中。
- Path Conflicts:环境配置默认即可,可以不做修改,可以修改的有(Install Directory我们的安装文件夹路径、Data Directory 数据库存储路径),这里最好默认因为如果重装可能有一些隐藏文件没有删除干净导致再次安装安装失败
径冲突问题(path confict)
,我们就可以快速进入默认安装路径下删除ProgramData中的隐藏的MYSQL文档即可。 - Download:确定自己所选择的MySQL版本,下一步进行下载
- Installation:点击Execute(执行)进行下载
- Product Configuration:产品配置,对自己下载的版本进行配置,直接下一步进入配置。
- Type and Networking:网络和类型,Config type选择默认Development Computer开发电脑,下面是配置链接服务器的方式,这里如果你下载了两种版本的mysql或者你之前就有其他版本的mysql,那么这里的port就要注意不同版本的mysql要设置不同的端口号,可自行设置,Advanced Configuration高级设置-->就是显示高级和日志选项
- Authentication Method:身份验证方式,第一个强密码加密,第二个使用旧版本加密, mysql推荐使用最新的数据库和相关客户端,MySQL8换了加密插件,所以如果选第一种方式,很可能你的navicat等客户端连不上mysql8。我们测试还是选择第二种。
- Accounts and Roles:账户与角色,设置密码
- windows service:设置windows自启动和账户权限,可以默认
- Apply Configuration:应用配置,Execute执行,Finish
- 退出Product Configuration配置点击下一步进入Installation Complete安装完成点击结束。
3.2 配置环境变量
-
右键此电脑选择属性
-
选择高级系统设置
-
点击环境变量
-
选择下面系统变量中的path
-
在path中添加mysql安装路径中的bin文件夹所在路径,这里是mysql默认安装路径(C:\ProgramFiles\MYSQL\MYSQL Server 8.0\bin)
配置好环境变量后,我们打开刚刚的安装目录,如果安装目录下没有my.ini文件或者my-default.ini文件(mysql的配置文件,没有可以创建一个)
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\\Programming_Language\mysql-8.1.0-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\\Programming_Language\mysql-8.1.0-winx64\Data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
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
# 设置默认字符集为UTF8MB4
default-character-set=utf8
3.3 初始化和启动服务
- 在cmd中输入,稍微等待一会,如果出现没有出现报错信息(如下图)则证明data目录初始化没有问题,此时再查看MySQL目录下已经有data目录生成。
mysqld --initialize-insecure
- 注册MySQL服务
mysqld -install
- 在cmd中输入,是8.0版本的话就在mysql后面加80 以此类推。
net start mysql80
- 登录
mysql -uroot -p初始密码
- 登录后可以修改user表来更改密码
alter user 'root'@'localhost' identified with mysql_native_password by 'root';