Windows Server安装配置MySQL

引言

因为各种各样的原因,好久没来园子发表随笔了。像工作忙没时间啊,文章内容缺乏亮点啊,没有技术新颖性啊之类。好吧,我就承认了,一个字,懒,足以概括以上种种理由^_^。

居住在英雄的城市,经历了疫情的洗礼,还是出来冒个泡,刷一下存在感,走起……

 

 

图片来源于网络

起因

之前最爱使用的数据库,还是SQLite这种轻量级,便携且可跨平台的文件型数据库。其次,是不硬公司的MS SQL Express,配合数据库管理工具,维护管理方便得不要不要的。

虽然MySQL也是IT业大受欢迎的数据库,因没有业务驱动需求,一直没有使用的动力。虽然以前也安装使用过(很久以前,部署过Joomla系统),过程早已尘封到久远的记忆中模糊不清了。

最近因项目应用需使用到MySQL,特将安装配置要点进行一下整理,以作备忘。

 

版本选择

MySQL原本是一个开源数据库,自从被Orale公司收购后,分为了商业版和社区版本。

作为资深的白嫖一族,我们如何选择?

自然是选择不要钱的啊😊

出于对版权的尊重,我们选择社区版本。

下载在此,拿走不谢。

社区版本下载页面:https://dev.mysql.com/downloads/mysql/

 

本文主要介如windows server下的部署配置,linux环境请各位自行查阅相关资料。

 

 

 

社区版本只为Windows系统提供了ZIP格式的下载文件。并不提供msi格式的一键安装配置版本,有些蛋疼。

下载并解压,将64-bit版本目录复制到你喜欢的目录。

个人认为,老外们也大多是一些不太靠谱的人。

社区版将x86、x64放在一起下载,白白浪费下载时间啊。现在x86还有使用的场景吗?

就算老外们认为我大天朝还在农耕女织时代,还在使用x86的服务器,那更要考虑下我们绢绢细流的下载带宽,将x86和x64分别打包下载啊。

另外解压后,对应目录中有一个接近200MB的data目录。完全可以删除。

删除x86和x64目录中的data,压缩备份的zip就只剩下50多MB了。我宝贵的SSD硬盘空间啊。还是丢到云盘吧。

 

开始配置

废话了半天,我们言归正传。

 

在mysql主目录下创建配置文件 my.ini

内容如下:

 

 1 [mysqld]
 2 
 3 # 设置 3306 端口
 4 
 5 port=3306
 6 
 7 # 设置 mysql 的安装目录
 8 
 9 basedir="D:\program files\mysql-8.0.23-winx64"
10 
11 # 设置 mysql 数据库的数据的存放目录
12 
13 datadir="D:\program files\mysql-8.0.23-winx64\data"
14 
15 # 允许最大连接数
16 
17 max_connections=200
18 
19 # 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
20 
21 max_connect_errors=10
22 
23  
24 
25 # 服务端使用的字符集默认为 UTF8
26 
27 character-set-server = utf8mb4
28 
29 collation-server = utf8mb4_unicode_ci
30 
31 init_connect = 'SET NAMES utf8mb4'
32 
33 skip-character-set-client-handshake
34 
35 
36 # 创建新表时将使用的默认存储引擎
37 
38 default-storage-engine=INNODB
39 
40  
41 
42 # 默认使用“mysql_native_password”插件认证
43 
44 #default_authentication_plugin=mysql_native_password
45 
46 [mysql]
47 
48 # 设置 mysql 客户端默认字符集
49 
50 default-character-set=utf8mb4
51 
52  
53 
54 [client]
55 
56 # 设置 mysql 客户端连接服务端时默认使用的端口
57 
58 port=3306
59 
60 default-character-set=utf8mb4

 

配置文件中有详细的中文解释,就不多说明了。

注意,配置中的mysql安装目录改成你对应的目录。

 

初始化mysql

以管理员角色运行CMD,不要用PS,PS在异常时无提示信息。

什么?找不到cmd?

按下键盘上的win键,直接键入 cmd

在搜索到的命令提示符 应用菜单上,选择以管理员身份运行

 

 

 

 

 

熟悉的小黑屋又回来啦,别跑……

执行如下命令:

mysqld --initialize-insecure

其作用是初始化data目录,并授权一个无密码的root用户。

执行成功后,会在mysql安装目录下多出一个data子目录(用于存放数据库,对于早期版本,安装后就有该目录)。

 

启动mysql

在CMD窗口中运行mysqld,启动MySQL

 

修改管理员密码

在新的CMD窗口中运行

mysqladmin -u root -p password 回车

提示输入密码,直接回车(默认为空密码)

根据提示,输入新密码(请用小本本记下来哦)

 重复确认,创建新密码成功。

 

安装服务

mysqld -install

 

移除服务

mysqld -remove

 

启动服务

net start mysql

 

配置远程访问权限

启动服务后,运行命令:

mysql -u root -p

use mysql;

select  User,authentication_string,Host from user;

更新root用户域属性,'%'表示允许外部访问:

 update user set host='%' where user ='root';

执行以上语句之后再执行:

 FLUSH PRIVILEGES;

让更新配置生效

再执行授权语句:

 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;

然后外部就可以通过账户密码访问了。

 

小伙伴们,可以愉快的和MySQL玩耍了,啦啦啦,下课!

 

posted @ 2021-06-30 22:33  赫山老妖  阅读(274)  评论(0编辑  收藏  举报