文章目录安装Windowslinux简单使用.sql脚本的执行MySQL卸载图形化界面连接尝试使用navicat连接可能的报错创建能远程登录的用户via Docker install安装Windowsmysql_Windows下载地址双击MySQL安装文件mysql-installer-community.msi出现安装类型选项。Developer Default开发者默认Server only只安装服务器端Client only只安装客户端Full安装全部选项Custom自定义安装记住MySQL的监听端口默认是3306。主要目录MySQL软件安装目录C:\Program Files\MySQL\MySQL Server 8.0MySQL数据目录C:\ProgramData\MySQL\MySQL Server 8.0\my.ini, bin/mysql默认端口 port3306 默认验证插件 default_authentication_plugincaching_sha2_password 默认存储引擎 default-storage-engineINNODB \begin{array}{c|cc} 默认端口 \text{port3306}\\ 默认验证插件 \text{default\_authentication\_plugincaching\_sha2\_password}\\ 默认存储引擎 \text{default-storage-engineINNODB} \end{array}默认端口默认验证插件默认存储引擎​port3306default_authentication_plugincaching_sha2_passworddefault-storage-engineINNODB​启动 MySQL服务或者在MySQL的bin目录通过命令行开启mysql服务net start mysql关闭是net stop mysqlMySQL登录cdC:\Program Files\MySQL\MySQL Server8.0\bin mysql-hlocalhost-uroot–pmysqlbin目录下的mysql.exe-hhost主机名。后面跟要访问的数据库服务器的地址如果是登录本机可以省略-uuser 用户名。后面跟登录数据的用户名-p: password 密码。一般不直接输入而是回车后以保密方式输入mysql的用户名和密码在安装的时候有设置MySQL管理员账户名称是rootlinuxRefer: https://developer.aliyun.com/article/758177sudoaptinstallmysql-server systemctl status mysql# root 默认验证方式 auth_socketmysqlalterUSERrootlocalhostIDENTIFIED WITH mysql_native_password BYroot;mysqlFLUSH PRIVILEGES;远程连接ERROR 2003 (HY000): Cant connect to MySQL server on localhost (10061))# vim mysqld.cnfbind-address0.0.0.0简单使用mysqlshowdatabases;# 四个系统库--------------------|Database|--------------------|information_schema||mysql||performance_schema||sys||webasenodemanager|--------------------mysqlusemysql;# 切换数据库mysqlshowtables;# 当前数据库下的tablesmysqlquit# \q, exitMySQL层次结构Database - Table - Column - 记录每一行就是一条记录.sql脚本的执行在cmd命令行中执行mysql -hlocalhost -u root -p 密码 SQL脚本路径在MySQL内执行先登录mysqlsource SQL脚本路径mysqlsource E:/test.sqlQuery OK,0rowsaffected(0.00sec)Query OK,0rowsaffected,1warning(0.02sec)Query OK,0rowsaffected,7warnings(0.04sec)Query OK,1rowaffected(0.02sec)Query OK,1rowaffected(0.00sec)MySQL卸载停止MySQL服务在命令行模式下执行net stop mysql或者在Windows服务窗口下停止服务在控制面板中删除MySQL软件再去两个文件夹确认一下删除软件文件夹直接删除安装文件夹C:\Program Files\MySQL其实此时该文件夹已经被删除或者剩下一个空文件夹。删除数据文件夹直接删除文件夹C:\ProgramData\MySQL。此步不要忘记否则会影响MySQL的再次安装。图形化界面连接常用的有phpadminnavicatSQLyog连接可能会报错原因是在MySQL8之前版本中加密规则mysql_native_password而在MySQL8以后的加密规则为caching_sha2_password。解决此问题有两种方法更新navicat驱动将mysql用户登录的加密规则修改为mysql_native_password。此处采用第二种方式。// 设置密码永不过期alteruserrootlocalhostidentifiedbyrootpassword expire never;// 设置加密规则为mysql_native_passwordalteruserrootlocalhostidentifiedwithmysql_native_passwordbyroot;尝试使用navicat连接可能的报错该错误的原因是在MySQL8之前版本中加密规则mysql_native_password而在MySQL8以后的加密规则为caching_sha2_password。解决此问题有两种方法一种是更新navicat驱动来解决此问题一种是将mysql用户登录的加密规则修改为mysql_native_password。此处采用第二种方式。//设置密码永不过期把password换成自己的mysql的用户的密码这里是root ALTER USER root% IDENTIFIED BY password PASSWORD EXPIRE NEVER; //修改**root用户**加密规则 ALTER USER root% IDENTIFIED WITH mysql_native_password BY password; #更新一下用户的密码 password是你的密码 //刷新权限可选 FLUSH PRIVILEGES;root用户%默认是可以远程登录的SSH创建能远程登录的用户create user sqlUsr1 identified with mysql_native_password by 123456; grant all privileges on *.* to sqlUsr1;via Docker install$dockerpull mysql:8.0 $dockerrun--rm-eMYSQL_ROOT_PASSWORD123456\-v/data/mysql8:/var/lib/mysql:z mysql:8.0\mysqld--initialize--usermysql--datadir/var/lib/mysql2026[Note][Entrypoint]: Entrypoint scriptforMySQL Server8.0.45-1.el9 started.2026[Note][Entrypoint]: Switching to dedicated usermysql2026[Note][Entrypoint]: Entrypoint scriptforMySQL Server8.0.45-1.el9 started.2026[Note][Entrypoint]: Initializing database files20260[Warning][MY-011068][Server]The syntax--skip-host-cacheis deprecated and will be removedina future release. Please use SET GLOBALhost_cache_size0instead.20260[System][MY-013169][Server]/usr/sbin/mysqld(mysqld8.0.45)initializing of serverinprogress as process8020260[Warning][MY-010001][Server]Cant create thread to handle bootstrap(errno:1)20260[ERROR][MY-010020][Server]Data Dictionary initialization failed.20260[ERROR][MY-013236][Server]The designated data directory /var/lib/mysql/ is unusable. You can remove all files that the server added to it.20260[ERROR][MY-010119][Server]Aborting20260[System][MY-010910][Server]/usr/sbin/mysqld: Shutdown complete(mysqld8.0.45)MySQL Community Server - GPL. Centos 7 Docker 启动 mysql8报错无法创建线程Can’t create thread to handle bootstrapThe designated data directory /var/lib/mysql/ is unusable. 虚假报错Referhttps://www.cnblogs.com/tre2e/articles/20044835✅--privileged启动容器需要指定一个环境变量不然会报错。You need to specify one of the following as an environment variable:- MYSQL_ROOT_PASSWORD- MYSQL_ALLOW_EMPTY_PASSWORD- MYSQL_RANDOM_ROOT_PASSWORD进入容器dockerexec-itmysql8 mysql-uroot-p