[email protected] 踩坑

文章目录

    • 1. dos 启动mysql 拒绝访问
    • 2.乱码
    • 3.修改默认 data 存储位置
      • 1.设置 my.ini 文件注意
    • 4. 打开mysql,输入密码后闪退
    • 参考

1. dos 启动mysql 拒绝访问

  • 启动mysql 拒绝访问
  • 出现这个错误是没有用管理员身份运行cmd或者环境变量没有设置好,一定要用管理员身份运行

2.乱码

  • 安装时选择了字符集和“utf8”,通过命令行客户端来操作数据库时,有时候会出现乱码,

    可以在客户端执行:
    mysql> set names gbk;  
    可以通过以下命令查看:
    mysql> show variables like 'character_set_%';
    
  • 对于客户端和服务器的交互操作,

    • MySQL提供了3个不同的参数:
      • character_set_client
        • 客户端
      • character_set_connection
        • 连接
      • character_set_results
        • 返回结果的字符集分
      • 这3个字符集应该是相同的,
        • 才能确保用户写入的数据可以正确的读出和写入。
        • “set names xxx;”命令可以同时修改这3个参数的值,但是需要每次连接都重新设置。

3.修改默认 data 存储位置

  • 关闭 mysql 服务

    • 管理员身份关闭服务
  • 修改my.ini文件。

    • MySQL安装目录,

      • 找到目录下的my.ini文件,用记事本打开
    • [Ctrl+F]快捷键方法找到 datadir 关键词,然后找到以下这些配置代码,进行更改

      datadir=C:/ProgramData/MySQL/MySQL Server 8.0/Data
      
      # 数据文件储存在C盘下面的ProgramData/MySQL/MySQL Server 8.0/Data目录里面。
      
      将这个默认路径改成你想要的的路径,直接改一下存储盘,然后在相应路径下创建文件夹
      
    • 注意

  • 转移文件 data

    • 默认文件

      默认数据库目录:C:\ProgramData\MySQL\MySQL Server 5.7\Data
      
    • 转移 data

      • 将 【data】 内容全部复制到你要配置的文件中去
      • 修改权限
        • 修改存放数据库文件夹人员和权限,
        • 新创建的data文件夹上右击->属性->安全,
        • 在组和用户(G)中添加 NETWORK SERVICE 即可。(不添加服务无法启动)
  • 重启服务

    • 使用客户端,输入密码,无法启动mysql

    • 解决:

      • 找到安装目录的 bin 目录
  • 找到 mysqld.exe , 点击运行就可以正常运行了

    • 其他应急方案

      方法一 :直接在服务中开启 mysql ,然后在客户端输入密码就可以启动了
      方法二 :使用 cmd 启动

1.设置 my.ini 文件注意

  • 存储路径不要用中文,
  • my.ini 最好做个备份
  • 默认安装的话,那么该配置文件在 (C:\ProgramData\MySQL\MySQL Server 8.0\my.ini)。
    • 修改的需要权限
    • 这个文件属于隐藏文件,需要去打开隐藏文件名。
  • 下面这个没有碰到过
mysql数据库配置文件my.ini用记事本打开的时候,保存的默认字符集使用的是utf-8,这时候我们需要将修改后的配置另存为字符集设置为[ANSI],保存的最后会提示'修改字符集可能会导致字符丢失'的事忽略就是啦 

4. 打开mysql,输入密码后闪退

  • 密码错误或者输入了空密码

  • 输入密码,没有启动 mysql ,就出现闪退

    • 安装 mysqld.exe 解决
      • 找到安装目录的 bin 目录
      • 找到 mysqld.exe , 点击运行就可以正常运行了
    • 应急方案
      • 方法一 :直接在服务中开启 mysql ,然后在客户端输入密码就可以启动了
      • 方法二 :使用 cmd 启动
  • 输入密码,启动了 myusql ,出现闪退

    • 可能是 安装路径下 的 my.ini 配置文件 有问题。

    • 使用安全软件的时候,无意中关闭了 MySQL 服务

    # 没有使用过的
     
     方法 1:首先进入cmd切入MySQL的安装目录,再切入bin目录,输入mysqld-nt--skip-grant-tables命令。然后,此cmd窗口先不要关闭, 打开另一个窗口登陆MySQL或直接点开MySQL CommandLine Client输入正确的密码,即可。
     
     方法 2:找出运行win+R,在这个DOS窗体中,cd到MySQL Server X.X的bin目录下,然后输入mysql -u root -p命令,再输入密码,即可。
     
     方法 3:如果登录又提示mysql: unknownvariable 'character-set-server=gbk',解决方法:修改MySQL安装目录下的my.ini文件,将里面的default-character-set=gbk注释或删除掉,在服务里重启MySQL服务,即可。
     
     到这里,相信如果再遇到 MySQL 数据库输入密码后闪退问题时,咱们都可以轻而易举的解决啦!
    

参考

1. https://blog.csdn.net/n_s_X14/article/details/80469889
2. 尚学堂的课件
3. https://www.jb51.net/article/125901.htm
4.https://blog.csdn.net/qq_40178216/article/details/94014020

你可能感兴趣的:(数据库)