33、安装MySQL
一、Windows安装MySQL
1、下载
打开网址,页面如下,确认好要下载的操作系统,点击Download。
可以不用登陆或者注册,直接点击No thanks,just start my download就可以下载了。
https://dev.mysql.com/downloads/mysql/

2、解压
下载的zip文件解压,将解压之后的文件夹放到任意目录下,这个目录就是mysql的安装目录。我的是C:\mysql-8。
3、配置
在Windows系统中,配置文件默认是安装目录下的 my.ini 文件(或my-default.ini),在安装根目录下添加 my.ini,比如我这里是:C:\mysql-8\my.ini,写入基本配置。
my.ini参考配置
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=C:\mysql-8
# 设置mysql数据库的数据的存放目录
datadir=C:\mysql-8\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集 default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
注意,里面的 basedir 是我本地的安装目录,datadir 是我数据库数据文件要存放的位置,各项配置需要根据自己的环境进行配置。
查看所有的配置项,可参考:https://dev.mysql.com/doc/refman/8.0/en/mysqld-option-tables.html
4、环境变量
在系统变量PATH后面添加: 你的mysql bin文件夹的路径(如C:\mysql-8\bin)

5、初始化数据库
在MySQL安装目录的 bin 目录下执行命令:
mysqld --initialize --console
执行完成后,会打印 root 用户的初始默认密码,比如:

注意!执行输出结果里面有一段: [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: gFDdBy;e4JS其中root@localhost:后面的“ gFDdBy;e4JS”就是初始密码(不含首位空格)。在没有更改密码前,需要记住这个密码,后续登录需要用到。
要是你手贱,关快了,或者没记住,那也没事,删掉初始化的 datadir 目录,再执行一遍初始化命令,又会重新生成的。当然,也可以使用安全工具强制改密码。
参考:https://dev.mysql.com/doc/refman/8.0/en/data-directory-initialization-mysqld.html
6、安装MySQL服务
以管理员身份打开cmd窗口后,将目录切换到你解压文件的bin目录,输入后回车运行
mysqld --install [服务名]
mysqld --install
后面的服务名可以不写,默认的名字为 mysql。当然,如果你的电脑上需要安装多个MySQL服务,就可以用不同的名字区分了,比如 mysql5 和 mysql8。

(我这边自己电脑可执行文件路径始终隐射到C:\Program Files\MySQL 8.0,而不是我实际安装目录,所以我切换到了C:\mysql-8\bin再按照)
7、启动mysql服务
以管理员身份在cmd中输入:
net start mysql
服务启动成功之后,就可以登录了.
注意:在windows操作系统上没有重启mysql服务的命令,如果要重启服务,只能先stop再start。
net stop mysql #停止mysql
卸载服务: mysqld --remove mysql
8、更改密码和密码认证插件
在MySQL安装目录的 bin 目录下执行命令:
mysql -u root –p
这时候会提示输入密码,记住了上面第7步安装时的密码,填入即可登录成功,进入MySQL命令模式。

在MySQL8.0.4以前,MySQL的密码认证插件是“mysql_native_password”,执行就可以更改密码,
SET PASSWORD=PASSWORD('[修改的密码]');
但是MySQL8.0.4开始,而现在使用的是“caching_sha2_password”,可以这样更改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root-password';

因为当前有很多数据库工具和链接包都不支持“caching_sha2_password”,为了方便,我暂时还是改回了“mysql_native_password”认证插件。
修改密码验证插件,同时修改密码。在MySQL中执行命令:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
如果想默认使用“mysql_native_password”插件认证,可以在配置文件中配置default_authentication_plugin项。
[mysqld]
default_authentication_plugin=mysql_native_password
9、测试
可以用 命令查看一下默认安装的数据库:
show databases;
use mysql;
show tables;

看到默认初始化了mysql数据库,其中user表里面存储MySQL用户信息。我们可以看一下默认MySQL用户:
select user, host, plugin, authentication_string from mysql.user;

管理员root的host是localhost,代表仅限localhost登录访问。如果要允许开放其他ip登录,则需要添加新的host。如果要允许所有ip访问,可以直接修改成“%”
10、创建用户和权限:
#创建用户: CREATE USER 'test'@'%' IDENTIFIED WITH mysql_native_password BY ''; #(需要注意:mysql8.0加密方式修改了)
#检查用户 select user, host, plugin, authentication_string from user\G; 授权远程数据库 #授权所有权限
GRANT ALL PRIVILEGES ON *.* TO 'test'@'%';
#授权基本的查询修改权限,按需求设置
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON *.* TO 'test'@'%'; #查看用户权限
show grants for 'test'@'%';
二、Mysql图形化管理工具
1、Navicat(推荐)
目前开发者用的最多的一款mysql图形用户管理工具,界面简洁、功能也非常强大,与微软的SQLServer管理器很像,简单易学,支持中文。
收费,绿色破解版下载:
链接:https://pan.baidu.com/s/17PrPEp-yWEVh_lJIHeqIBA
提取码:eeij

2、MySQL Workbench
Mysql 官方的一个图形管理工具,用Python写的。支持数据库的创建、设计、迁移、备份、导出、导入等功能,支持windows、linux、mac主流的操作系统,使用起来非常的棒。
1、官方下载地址:
https://dev.mysql.com/downloads/workbench/

2、配置
Mysql Workbench显示数据库元数据三个库information_schema库、performance_schema以及mysql库的方法,先创建连接,连接到对应数据库.
默认只显示:sys数据库
选择工具栏Edit ->Preference或者在右上角选择图标:

在对话框中勾选:show Metadata and Internal Schemas(显示元数据和内容的Schemas).。
不用重启软件,重新连接即可。
三、Linux安装MySQL
1、环境和资源地址
*** centos 7 ***
http://repo.mysql.com/yum/mysql-5.6-community/
2、安装
1、 方式一(在线安装)
# 查看和mysql有关的安装包
yum search mysql # 安装mysql社区版本yum源
yum -y install http://repo.mysql.com/yum/mysql-5.6-community/el/7/x86_64/mysql-community-release-el7-5.noarch.rpm # 找到community社区版本的mysql包
yum search mysql |grep community # 使用yum安装下列
yum -y install mysql-community-server.x86_64 mysql-community-client.x86_64 mysql-community-server.x86_64 mysql-community-client.x86_64
2 、方式二(离线安装)
# 下载离线包
yumdownloader mysql-community-server.x86_64 mysql-community-client.x86_64 mysql-community-libs.x86_64 mysql-community-common.x86_64 # 安装
yum -y install mysql-community-client-5.6.41-2.el7.x86_64.rpm mysql-community-server-5.6.41-2.el7.x86_64.rpm mysql-community-common-5.6.41-2.el7.x86_64.rpm mysql-community-libs-5.6.41-2.el7.x86_64.rpm
3、操作mysql相关常用shell命令
# 启停服务
systemctl {start|stop|restart|status} mysqld.service
systemctl start mysqld.service # 查看服务状态
systemctl status mysqld.service # 安全初始化
/usr/bin/mysql_secure_installation # 停系统防火墙
systemctl stop firewalld.service # 查看强制访问控制状态
getenforce # 关闭强制访问控制策略
setenforce 0
4、登陆和初始化密码
# 创建root远程登陆密码
mysql -h 127.0.0.1 -u root -p mysql> grant all privileges on *.* to root@'%' identified by "root"; mysql> flush privileges;
33、安装MySQL的更多相关文章
- 编译安装MySQL 5.5.33
环境要求: 主机名 IP地址 需要软件及版本 系统版本 mysql.mfyxw.com 192.168.80.135 Mysql5.5.33 5.5.33 1.设定主机名 hostnamectl se ...
- 33.Docker安装Mysql及用户配置
mysql在官方上有两个镜像 这个是一个优化过的mysql 使用这个命令 安装mysql 演示最简单的方式去安装mysql: 这种方式安装的用户名没有,密码没有 docker run -d -p 33 ...
- centos 6x系统下源码安装mysql操作记录
在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配.可以通过源 ...
- centos 7.0 编译安装mysql 5.6.22 再次总结 成功编译安装~ 越来越熟练了~
查找php.ini文件所在位置 [root@localhost /]# find -name php.ini ./usr/etc/php/etc/php.ini mysql官网的安装说明http:// ...
- centos 7.0 编译 安装mysql 5.6.22 过程 已完成~ 成功~ 撒花~
mysql 下载目录/usr/local/srcmysql 解压目录 /usr/local/bin/mysql GitHub https://github.com/mysql/mysql-server ...
- 源代码安装 MySQL 5.6.28
本文内容 创建 MySQL 用户和组 解压 MySQL 源代码包 生成配置安装文件 编译和安装 MySQL 配置文件 创建 MySQL 授权表 MySQL 目录授权 启动 MySQL 验证 MySQL ...
- 在linux(CentOS-6.7_x86_64)上安装mysql成功记录
查看linux服务器的yum源设置: [root@hadoop03 yum.repos.d]# cd /etc/yum.repos.d [root@hadoop03 yum.repos.d]# ll ...
- 操作笔记:linux下安装mysql
1,检查linux下是否安装了mysql shell指令如下: [root@iZ945sgm0ugZ ~]# rpm -qa|grep -i mysql 如果有的话:做出挨个删除(eg:rpm -ev ...
- zabbix安装及配置(rpm包安装mysql,php,apache,zabbix)
zabbix安装及配置 一.安装mysql.php.apache.zabbix 安装环境: 操作系统:rhel6.3-x86-64 mysql:5.6.23 --官网下载rpm包安装php:5. ...
随机推荐
- 浅谈设计模式-visitor访问者模式
先看一个和visitor无关的案例.假设你现在有一个书架,这个书架有两种操作,1添加书籍2阅读每一本书籍的简介. //书架public class Bookcase { List<Book> ...
- 2、word插入目录、图/表
一.word插入目录 依次对每个标题在“段落”中进行大纲级别选择. 光标定位于目录生成的页面,再“引用”->“目录”->选择“自动目录1/2”,则可自动生成目录.若目录有所更改,则可选择“ ...
- python selenium爬虫工具
今天seo的同事需要一个简单的爬虫工具, 根据一个url地址,抓取改页面的a连接,然后进入a连接里面的页面再次抓取a连接 1.需要一个全局的set([])集合来保存抓取的url地址 2.由于现在单页面 ...
- CSP2019-S游记
目录 CSP2019-S游记 Day -2(UPDATE:2019-11-14) Day -1(UPDATE:2019-11-15) Day 1(UPDATE:2019-11-16) Day 2(UP ...
- 【题解】选数字 [51nod1354]
[题解]选数字 [51nod1354] 传送门:选数字 \([51nod1354]\) [题目描述] 共 \(T\) 组测试点,每一组给定一个长度为 \(n\) 的序列和一个整数 \(K\),找出有多 ...
- 可落地的DDD(3)-如何利用DDD进行微服务的划分
摘要 前面两篇介绍了DDD的目标管理.DDD的工程结构调整.这篇讨论微服务的划分.微服务是目前后端比较流行的架构体系了,那么如何做好一个微服务的划分?一个微服务的粒度应该是多大呢?这篇主要介绍如何结合 ...
- .Net Core WebAPI开启静态页,设置主页
1.使用场景 默认创建的.Net Core WebAPI应用在运行时是没有页面显示的,效果如下: 那么,如果想要给API设置一个主页,应该怎么做呢?这就需要用到本文提供的方法. 2.设置方法 (1)首 ...
- ajxa和axios的区别
1.axios 原理还是属于 XMLHttpRequest, 因此需要实现一个ajax. 2.但还会需要一个promise对象来对结果进行处理.3.ajax实现var Ajax={ get: func ...
- 学习笔记之Coding / Design / Tool
CODING 学习笔记之代码大全2 - 浩然119 - 博客园 https://www.cnblogs.com/pegasus923/p/5301123.html 学习笔记之编程珠玑 Programm ...
- requestAnimationFrame ---- 请求动画帧。
window.requestAnimationFrame() 告诉浏览器——你希望执行一个动画,并且要求浏览器在下次重绘之前调用指定的回调函数更新动画.该方法需要传入一个回调函数作为参数,该回调函数会 ...