• MySQL之由修改编码而引起的重装


    一:Mysql卸载

    本文介绍,在Windows10系统下,如何彻底删除卸载MySQL,原文(https://www.cnblogs.com/dekevin/p/11581907.html)

    1.停止MySQL服务

    开始——所有应用——Windows管理工具——服务,将MySQL服务停止。(或cmd中net stop mysql)

    2.卸载mysql server

    控制面板所有控制面板项程序和功能,将mysql server卸载掉

    3.将MySQL安装目录下的MySQL文件夹删除(我的安装目录是C:Program Files (x86)MySQL)

    4.运行“regedit”文件,打开注册表。(注册表删除要注意)
    删除HKEY_LOCAL_MACHINESYSTEMControlSet001ServicesEventlogApplicationMySQL文件夹
    删除HKEY_LOCAL_MACHINESYSTEMControlSet002ServicesEventlogApplicationMySQL文件夹。
    删除HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesEventlogApplicationMySQL的文件夹。
    如果没有相应的文件夹,就不用删除了。

    5.删除C盘下的“C:ProgramDataMySQL ”文件夹,如果删除不了则用360粉碎掉即可,
    该programData文件默认是隐藏的,设置显示后即可见,或者直接复制 C:ProgramData 到地址栏回车即可进入!
    将整个MySQL文件夹删除掉。

    6.开始——所有应用——Windows管理工具——服务
    如果已经将MySQL卸载,但通过“开始-》所有应用-》Windows管理工具-》服务”查看到MySQL服务仍然残留在
    系统服务里。又不想改服务名,改怎么办呢。
    只要在CMD里输入一条命令就可以将服务删除:
    sc delete mysql //这里的mysql是你要删除的服务名
    这样一来服务就被删除了。

    7.这样就可以重装MySQL数据库了!

    二:MySQL安装

    注意:我是免安装版的Mysql,原文(https://www.cnblogs.com/winton-nfs/p/11524007.html)

    1.官网下载免安装版MySQL

    2.安装配置

    解压到全英文路径目录下后,

    1.以管理员身份打开命令行

    2.在解压的bin目录下,运行mysqld --install来安装mysql的服务(有成功提示)

    3.运行mysqld --initialize --console来初始化mysql,在这里,初始化会产生一个随机密码,位置在末尾(一定要截图保存)

    4.开启mysql的服务(net start mysql)(这里出现错误,超半个小时没解决就卸载干净重装吧!)

    5.登录验证,mysql是否安装成功!(要注意上面产生的随机密码,不包括前面符号前面的空格,否则会登陆失败)

    三:加载配置my.ini文件

    在使用ZIP安装时,安装好之后默认是没有my.ini配置文件的,原文:https://www.cnblogs.com/RayWang/p/9347874.html

    1.删除Mysql服务

    打开cmd(记得”使用管理员身份“打开),如果没有配置环境变量,请cd(切换目录)到mysql程序下的bin文件夹下

    运行命令:

    E:JavaStudy	oolsmysql-5.7.30-winx64in>sc delete MySql
    

    "MySql"为服务名称,你的MysSql服务不一定是这个名称,可以打开电脑的服务窗口查看。

    删除完成之后,最好去电脑的服务窗口看下,如果找不到MySql服务,说明已经已经删除成功。

    如果还能看到MySql服务,可以手动右击选择”停止“,服务停止之后就会自动消失了。

    2.新建my.ini配置文件

    位置:E:JavaStudy oolsmysql-5.7.30-winx64(在mysql程序的根目录下)

    改动:basedir和datadir(data文件夹可以为空)

    注意:配置目录是要注意是否有需要转义的字符,如: 要改成\t

    [client]
    port=3306
    default-character-set=utf8
    
    [mysql]
    default-character-set=utf8
    
    # default-character-set=
    
    [mysqld]
    port=3306
    character-set-server=utf8
    
    # mysql根目录
    basedir=E:JavaStudy\toolsmysql-5.7.30-winx64
    
    # 放所有数据库的data目录
    datadir=E:JavaStudy\toolsmysql-5.7.30-winx64data
    
    # character-set-server=
    
    # 默认存储引擎innoDB
    default-storage-engine=INNODB
    
    # Set the SQL mode to strict
    sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
    
    #日志输出为文件
    log-output=FILE
    
    # 是否开启sql执行结果记录,必须要设置general_log_file参数,日志的路径地址
    # 即日志跟踪,1为开启,0为关闭
    general-log=0
    general_log_file="execute_sql_result.log"
    
    # 配置慢查询,5.7版本默认为1
    #slow-query-log=1
    #slow_query_log_file="user-slow.log"
    #long_query_time=10
    
    #默认不开启二进制日志
    #log-bin=mysql-log
    
    #错误信息文件设置,会将错误信息放在data/mysql.err文件下
    log-error=mysql.err
    
    # Server Id.数据库服务器id,这个id用来在主从服务器中标记唯一mysql服务器
    server-id=1
    
    #lower_case_table_names: 此参数不可以动态修改,必须重启数据库
    #lower_case_table_names = 1  表名存储在磁盘是小写的,但是比较的时候是不区分大小写
    #lower_case_table_names=0  表名存储为给定的大小和比较是区分大小写的 
    #lower_case_table_names=2, 表名存储为给定的大小写但是比较的时候是小写的
    lower_case_table_names=1
    
    #限制数据的导入导出都只能在Uploads文件中操作,这个是在sql语句上的限制。
    #secure-file-priv="D:AppServmysql-5.7.23/Uploads"
    #值为null ,也就是注释掉这个参数或者secure-file-priv=null。表示限制mysqld 不允许导入|导出
    #值为/tmp/ ,即secure-file-priv="/tmp/" 表示限制mysqld 的导入|导出只能发生在/tmp/目录下
    #没有具体值时,即secure-file-priv=      表示不对mysqld 的导入|导出做限制
    
    # 最大连接数
    max_connections=151
    # 打开表的最大缓存数
    table_open_cache=2000
    
    # tmp_table_size 控制内存临时表的最大值,超过限值后就往硬盘写,写的位置由变量 tmpdir 决定 
    tmp_table_size=16M
    
    # 每建立一个连接,都需要一个线程来与之匹配,此参数用来缓存空闲的线程,以至不被销毁,
    # 如果线程缓存中有空闲线程,这时候如果建立新连接,MYSQL就会很快的响应连接请求。
    # 最大缓存线程数量
    thread_cache_size=10
    

    3.重新生成data文件

    删除之前生成的data文件,如果有重要的数据表,请先备份好。

    回到cmd,重新生成data文件。运行:

    E:JavaStudy	oolsmysql-5.7.30-winx64in>mysqld --initialize-insecure --user=mysql
    

    该命令需要执行大概一分钟左右,完成后会在MySql程序文件夹下重新生成名称为data的文件夹

    4.重新安装mysql服务,同时绑定my.ini配置文件

    安装MySql服务,同时设置绑定my.ini配置文件。命令:

    D:MySqlin>mysqld --install "MySql" --defaults-file="E:/JavaStudy/tools/mysql-5.7.30-winx64/my.ini"
    

    “MySql80”是服务名称,当然,也可以自己取别的名字。

    ”..my.ini“是新建的配置文件的位置,也可以写成绝对路径”D:MySqlmy.ini“。

    5.启动服务

    这里有两种启动服务的方式:1)服务窗口启动服务;2)cmd启动服务(net start 服务名) (等待20秒左右,成功后会显示的)

    6.重新设置密码

    登录

    E:JavaStudy	oolsmysql-5.7.30-winx64in>mysql -u root -p
    

    登陆成功后修改(参考:https://www.cnblogs.com/yang82/p/7794712.html)

    格式:mysql> set password for 用户名@localhost = password('新密码');

    例子:mysql> set password for root@localhost = password('123');

    四:修改mysql为utf8编码格式

    1.首先查看编码情况

    首先通过 show variables like 'character_set_%';查看mysql字符集情况

    database和server的字符集使用了latin1编码方式时,需要改为utf8格式

    2.修改

    在my.ini文件下,复制上面代码到my.ini文件保存覆盖即可,作用代码如下,

    [client]
    port=3306
    default-character-set=utf8
    
    [mysql]
    default-character-set=utf8
    
    # default-character-set=
    
    [mysqld]
    port=3306
    character-set-server=utf8
    

    3.再次查看编码情况

    Don't just say it. Show me your code.
  • 相关阅读:
    socket.io带中文时客户端无法响应
    JQ树插件 — zTree笔记
    cecium 笔记
    express处理跨域问题,中间件 CORS
    一些接口
    express 3.5 Err: request aborted
    ovirt kvm嵌套虚拟化
    kvm实现快速增量盘模式的克隆脚本
    kvm命令
    kvm 中 Guest Is already in use 处理办法
  • 原文地址:https://www.cnblogs.com/bigbeardhk/p/13173739.html
Copyright © 2020-2023  润新知