Mysql免安装版布署操作说明

2023-10-18 10:20

本文主要是介绍Mysql免安装版布署操作说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Mysql布署方法

使用方法:

  1. 下载最好解压到磁盘根目录下,因为mysql目录名不能有空格,所以不能安装在program files文件夹里。
  2. My.ini最好程序生成,或者安装时指定D或E,因为里面有个路径需要手动改,或者程序生成my.ini最好。建议指定安装在D:\mysql或E:\mysql
  3. 如果第一次使用,Data目录不要手动创建,否则会初始化失败。打包时全压缩不需要初始化。
  4. 通过ODBC连接,需要安装ODBC驱动。
  5. 打包时建议压缩,因为mysql8.0.2安装完1G,打包后只有133M。通过程序解压到指定目录即可。

Mysql下载地址:MySQL :: Download MySQL Community Server

ODBC下载地址:MySQL :: Download Connector/ODBC

其他连接方式:MySQL :: MySQL Community Downloads  如(.net,php,C++,python等)

第一步:解压到指定目录

第二步:生成my.ini

因为当前程序目录不固下,Mysql的zip包没有my.ini,需要手工创建。

注意mysql的路径是不是斜杠,是反斜杠

basedir =E:/mysql

datadir = E:/mysql/Data

端口自行定义

以下文本拷贝到my.ini

# For advice on how to change settings please see

# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the

# *** default location during install, and will be replaced if you

# *** upgrade to a newer version of MySQL.

[mysqld]

#skip-grant-tables

# Remove leading # and set to the amount of RAM for the most important data

# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.

  innodb_buffer_pool_size = 128M

# Remove leading # to turn on a very important data integrity option: logging

# changes to the binary log between backups.

# log_bin

# These are commonly set, remove the # and set as required.

# mysql根目录 ---注意此处的斜杠是 /

  basedir =E:/mysql

# 数据文件存放目录 ---注意此处的斜杠是 /

  datadir = E:/mysql/Data

# 端口,默认3306  

  port = 3386

# 服务实例的唯一标识

# server_id = MySQL

# 允许最大连接数

  max_connections=200

# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统

  max_connect_errors=10

# 服务端使用的字符集默认为utf8mb4

  character_set_server=utf8mb4

# 创建新表时将使用的默认存储引擎

  default-storage-engine=INNODB

# 默认使用“mysql_native_password”插件认证

  default_authentication_plugin=mysql_native_password

  

# Remove leading # to set options mainly useful for reporting servers.

# The server defaults are faster for transactions and fast SELECTs.

# Adjust sizes as needed, experiment to find the optimal values.

  join_buffer_size = 128M

  sort_buffer_size = 2M

  read_rnd_buffer_size = 2M

  

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[mysql]

# 设置mysql客户端默认字符集

default-character-set=utf8mb4

[client]

# 设置mysql客户端连接服务端时默认使用的端口

port=3386   

default-character-set=utf8mb4

精简版my.ini,可以使用程序生成。

[mysqld]

  innodb_buffer_pool_size = 128M

  basedir =D:/Mysql57

  datadir = D:/Mysql57/Data

  port = 3386

  max_connections=200

  max_connect_errors=10

  character_set_server=utf8mb4

  default-storage-engine=INNODB

  default_authentication_plugin=mysql_native_password

  join_buffer_size = 128M

  sort_buffer_size = 2M

  read_rnd_buffer_size = 2M

  sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES  

[mysql]

  default-character-set=utf8mb4

[client]

  port=3386   

  default-character-set=utf8mb4

第三步:初始化mysql

注意:data目录不要手动创建,否则会失败,初始化时会自动创建。

mysqld --initialize     //如果初始化成功,data目录下会生成很多文件

第四步:注册并启动windows服务

mysqld --install MySQL82 #注册服务,MySQL82是服务名,根据自己的实际情况命名即可

net start MySQL82 #启动服务,也可以通过服务管理界面进行操作

如果失败可以删了重来。

mysqld --remove MySQL82 #移除服务

net stop MySQL82 #停止服务,也可以通过服务管理界面进行操作

第五步:登录

初始化完成后,在e:\mysql\data目录下会生成一个计算机名.err后缀的文件,初始密码可以在此处查看;然后用这个初始密码登录后,更改为新的密码,并创建一个网络用户并授权。

注意:初始用户:root@localhost只能在本机使用,网络其他电脑无法连接。需要改为root@%才可以网络连接。

#登录MySQL后执行以下sql

mysql -uroot -p

#回车后输入密码登录

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

#命令来修改密码

#修改加密规则,MySql8.0 版本 和 5.0 的加密规则不一样,而现在的可视化工具只支持旧的加密方式。

#只允许本地登录的账号密码 'root'@'localhost' ;

#允许远程登录的账号密码'root'@'%'

exit; #命令退出 MySQL,然后通过新密码再次登陆

CREATE user 'root'@'%' identified with mysql_native_password by 'root';

#创建允许远程的用户(使用root密码进行远程登录,‘%’表示允许所有地址远程,可以指定IP)

grant all privileges on *.* to 'root'@'%' with grant option;  #给用户授权

flush privileges;#命令刷新修该后的权限

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

#更改密码有效期,永不过期

flush privileges; #命令刷新修该后的权限

exit; #命令退出

第六步:完成建库

字符集选择: 在国内正常都是用【UTF-8】

排序一般分为两种:utf_bin和utf_general_ci,bin 是二进制, a 和 A 会别区别对待,建议general。

utf8_general_ci 【不区分大小写】,这个你表中存注册用户名和邮箱的时候就要使用这种方式。

utf8_general_cs 【区分大小写】,如果用户名和邮箱用这个 就会照成不良后果

使有navicate连接。注意端口已经在my.ini中改为3389,不是默认的3309。

第七步:ODBC连接

注意,分32位和64位,根据个人电脑安对应版本,否则找不到驱动。

 

附:bat自动生成my.ini且自动添加服务

set cpath=%~dp0

del %cpath%\my.ini

echo [mysqld] >> %cpath%\my.ini

echo   innodb_buffer_pool_size = 128M >> %cpath%\my.ini

set mypath=%cpath%

echo   basedir =%mypath:\=/% >> %cpath%\my.ini

echo   datadir =%mypath:\=/%Data >> %cpath%\my.ini

echo   port = 3306 >> %cpath%\my.ini

echo   max_connections=200 >> %cpath%\my.ini

echo   max_connect_errors=10 >> %cpath%\my.ini

echo   character_set_server=utf8mb4 >> %cpath%\my.ini

echo   default-storage-engine=INNODB >> %cpath%\my.ini

echo   default_authentication_plugin=mysql_native_password >> %cpath%\my.ini

echo   join_buffer_size = 128M >> %cpath%\my.ini

echo   sort_buffer_size = 2M >> %cpath%\my.ini

echo   read_rnd_buffer_size = 2M >> %cpath%\my.ini

echo   sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES   >> %cpath%\my.ini

echo [mysql] >> %cpath%\my.ini

echo   default-character-set=utf8mb4  >> %cpath%\my.ini

echo [client] >> %cpath%\my.ini

echo   port=3306    >> %cpath%\my.ini

echo   default-character-set=utf8mb4 >> %cpath%\my.ini

cd bin

mysqld --install MySQL

pause

这篇关于Mysql免安装版布署操作说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/231931

相关文章

PyCharm接入DeepSeek实现AI编程的操作流程

《PyCharm接入DeepSeek实现AI编程的操作流程》DeepSeek是一家专注于人工智能技术研发的公司,致力于开发高性能、低成本的AI模型,接下来,我们把DeepSeek接入到PyCharm中... 目录引言效果演示创建API key在PyCharm中下载Continue插件配置Continue引言

MySQL分表自动化创建的实现方案

《MySQL分表自动化创建的实现方案》在数据库应用场景中,随着数据量的不断增长,单表存储数据可能会面临性能瓶颈,例如查询、插入、更新等操作的效率会逐渐降低,分表是一种有效的优化策略,它将数据分散存储在... 目录一、项目目的二、实现过程(一)mysql 事件调度器结合存储过程方式1. 开启事件调度器2. 创

使用Python实现操作mongodb详解

《使用Python实现操作mongodb详解》这篇文章主要为大家详细介绍了使用Python实现操作mongodb的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、示例二、常用指令三、遇到的问题一、示例from pymongo import MongoClientf

SQL Server使用SELECT INTO实现表备份的代码示例

《SQLServer使用SELECTINTO实现表备份的代码示例》在数据库管理过程中,有时我们需要对表进行备份,以防数据丢失或修改错误,在SQLServer中,可以使用SELECTINT... 在数据库管理过程中,有时我们需要对表进行备份,以防数据丢失或修改错误。在 SQL Server 中,可以使用 SE

mysql外键创建不成功/失效如何处理

《mysql外键创建不成功/失效如何处理》文章介绍了在MySQL5.5.40版本中,创建带有外键约束的`stu`和`grade`表时遇到的问题,发现`grade`表的`id`字段没有随着`studen... 当前mysql版本:SELECT VERSION();结果为:5.5.40。在复习mysql外键约

Linux中shell解析脚本的通配符、元字符、转义符说明

《Linux中shell解析脚本的通配符、元字符、转义符说明》:本文主要介绍shell通配符、元字符、转义符以及shell解析脚本的过程,通配符用于路径扩展,元字符用于多命令分割,转义符用于将特殊... 目录一、linux shell通配符(wildcard)二、shell元字符(特殊字符 Meta)三、s

SQL注入漏洞扫描之sqlmap详解

《SQL注入漏洞扫描之sqlmap详解》SQLMap是一款自动执行SQL注入的审计工具,支持多种SQL注入技术,包括布尔型盲注、时间型盲注、报错型注入、联合查询注入和堆叠查询注入... 目录what支持类型how---less-1为例1.检测网站是否存在sql注入漏洞的注入点2.列举可用数据库3.列举数据库

Mysql虚拟列的使用场景

《Mysql虚拟列的使用场景》MySQL虚拟列是一种在查询时动态生成的特殊列,它不占用存储空间,可以提高查询效率和数据处理便利性,本文给大家介绍Mysql虚拟列的相关知识,感兴趣的朋友一起看看吧... 目录1. 介绍mysql虚拟列1.1 定义和作用1.2 虚拟列与普通列的区别2. MySQL虚拟列的类型2

使用MongoDB进行数据存储的操作流程

《使用MongoDB进行数据存储的操作流程》在现代应用开发中,数据存储是一个至关重要的部分,随着数据量的增大和复杂性的增加,传统的关系型数据库有时难以应对高并发和大数据量的处理需求,MongoDB作为... 目录什么是MongoDB?MongoDB的优势使用MongoDB进行数据存储1. 安装MongoDB

mysql数据库分区的使用

《mysql数据库分区的使用》MySQL分区技术通过将大表分割成多个较小片段,提高查询性能、管理效率和数据存储效率,本文就来介绍一下mysql数据库分区的使用,感兴趣的可以了解一下... 目录【一】分区的基本概念【1】物理存储与逻辑分割【2】查询性能提升【3】数据管理与维护【4】扩展性与并行处理【二】分区的