MySQL的安装

目录

      • windows下msi方式安装
      • windows下zip方式安装
      • Linux下安装
      • navicat连接mysql server的常见问题
        • Client does not support authentication protocol requested by server; consider upgrading MySQL client

 

本文介绍的是8.x版本的安装
 

windows下msi方式安装

选择自定义安装
MySQL的安装_第1张图片
只选择mysql server,这个选项自带了命令行客户端

MySQL的安装_第2张图片
选第一个,不搭建mysql集群,即单机版

MySQL的安装_第3张图片
使用默认配置

MySQL的安装_第4张图片第一个是强密码验证,更安全,8.x选此项(版本8才支持此项);第二个是弱密码验证,为5.x保留的

MySQL的安装_第5张图片
设置root的密码,如果要添加用户,role选择DB Manager

MySQL的安装_第6张图片
使用默认配置
 

会自动安装mysql服务,开机自启,安装完mysql服务就是开启的。

 

windows下zip方式安装

为了方便,先重命名解压目录为mysql。
 
1、mysql主目录下新建文件夹data,新建mysql配置文件my.ini

[client]
default-character-set=utf8

[mysqld]
port=3306
character_set_server=utf8

#mysql主目录
basedir=D:\mysql
#数据存储目录
datadir=D:\mysql\data

#创建表默认使用的存储引擎
default-storage-engine=INNODB
#最大连接数
max_connections=200

注意保存my.ini时编码要是ASCII,不能是UTF-8
 

2、 管理员命令行,cd到mysql的bin目录

#初始化mysql数据库,记住生成的临时密码
.\mysqld --initialize --console

#安装mysql服务。install是安装,remove是移除
.\mysqld --install

#启动服务。start,stop,restart
net start mysql

#连接到mysql server,输入临时密码。临时密码要手打,复制很容易出错
.\mysql -uroot -p

#登录成功后,修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

安装服务、启动|停止|重启服务 要在管理员命令行执行,普通命令行权限不够,其它命令可以在普通命令行执行。

在管理员命令行执行当前目录下的可执行文件时,要加./,普通命令行则不必。

 

Linux下安装

#查看软件源中的mysql-server信息,已经是8.x版本。如果不是可以yum search mysql-server搜索
yum info msyql-server

#安装mysql-server,已经自带了msyql-client
yum install mysql-server

#设置为开机启动
systemctl enable mysqld

#查看是否是开机启动状态
#systemctl list-unit-files | grep mysqld 

#启动mysql-server,也可以service mysqld start
systemctl start mysqld

#查看临时密码。如果不知道mysqld.log的路径,可以 find / -name mysqld.log 查找
cat /var/log/mysql/mysqld.log | grep password

root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.

看到是空密码(没有密码)

#不用输密码,直接回车
mysql -uroot -p

#修改|设置root的密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';


#默认host是localhost,即只允许本地连接,windows上安装mysql一般用于开发,所以一般不用修改host
#linux常作为服务器,需要修改host为%,允许其它机器连接

use mysql;

#此处只修改了root的,如果要修改全部账号的host,不指定user即可
update user set host = '%' where user ='root';

flush privileges;


#如果3306端口没开启,去开启
firewall-cmd --query-port=3306/tcp
firewall-cmd --add-port=3306/tcp --zone=public --permanent
firewall-cmd --reload

 
说明:如果安装过程中出问题了,或者有老版本的mysql,卸载mysql-server之后要先删除mysql相关目录

#查找mysql相关目录,然后 rm -rfI 全部删除
find / -name mysql

 

navicat连接mysql server的常见问题

Client does not support authentication protocol requested by server; consider upgrading MySQL client

原因:mysql server是8.x版本,密码加密方式发生了变化,使用的navicat版本较低,不能适配mysql 8.x的加密方式。
 

2种解决方式

1、下载安装最新版的navicat,或者使用其它数据库管理工具,比如DG

2、命令行连接到mysql server

ALTER USER 'root'@'localhost' IDENTIFIED BY 'abcd' PASSWORD EXPIRE NEVER;  

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'abcd'; 

FLUSH PRIVILEGES;

@前面的数据库用户名,BY后面的密码要换为自己的

你可能感兴趣的:(#,MySQL)