WSL2 配置及ubuntu18.04安装mysql8.0+

摘要:
https://aka.ms/wsl2kernelPressanykeytocontinue …

wsl2 完整配置

参考将WSL2作为生产力工具

Installing, this may take a few minutes…
WslRegisterDistribution failed with error: 0x800701bc
Error: 0x800701bc WSL 2 ??? https://aka.ms/wsl2kernel

Press any key to continue…

这是官方的讨论连接https://github.com/microsoft/WSL/issues/5393
这是安装文件下载链接https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

raw.githubusercontent.com 被墙解决方案

修改hosts

sudo vi /etc/hosts

199.232.4.133 raw.githubusercontent.com

ws2 ubuntu18.04安装mysql8.0+

1.下载最新的deb文件

wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.15-1_all.deb

2. 解压包

sudo dpkg -i mysql-apt-config_0.8.15-1_all.deb

安装过程中提示选择安装版本,默认安装的就是8.0版本,所以直接选择“OK”确认即可

3. 执行安装

sudo apt update

4. 安装mysql8.0 server

sudo apt install mysql-server

安装过程中会提示设置root密码。按照提示输入即可

输入之后会出现选择加密方式的提示界面,我在网上的教程中看到默认的mysql8.0的加密方式与ubuntu18.04 不兼容,所以选择5.x的加密方式;建议选择下边的那个

·Use Legacy Authentication Method·

5. 验证安装,输入命令

mysql -u root -p

错误记录

1. 签名无效 NO_PUBKEY xxxxxxxxxxxxxx

解决方式,设置可以并重新执行第三步命令

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 报错的key

eg:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7EA0A9C3F273FCD8

2. ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'

解决方案: INSTALLING MYSQL 8.0 UNDER WSL 2 AND UBUNTU

  1. 下载mysql.server.sh启动脚本

wget https://raw.githubusercontent.com/mysql/mysql-server/8.0/support-files/mysql.server.sh

  1. 修改该文件并复制到/etc/init.d/目录下
# If you change base dir, you must also change datadir. These may get
# overwritten by settings in the MySQL configuration files.

basedir=/usr
datadir=/var/lib/mysql

# Default value, in seconds, afterwhich the script should timeout waiting
# for server start.
# Value here is overriden by value in my.cnf.
# 0 means don't wait at all
# Negative numbers mean to wait indefinitely
service_startup_timeout=900

# Lock directory for RedHat / SuSE.
lockdir='/var/lock/subsys'
lock_file_path="$lockdir/mysql"

# The following variables are only set for letting mysql.server find things.

# Set some defaults
mysqld_pid_file_path=/var/run/mysqld/mysqld.pid
if test -z "$basedir"

mv mysql.server.sh /etc/init.d/mysql

chomd +x /etc/init.d/mysql

  1. 启动MySQL

sudo service mysql start

sudo service mysql stop

The server quit without updating PID file (/var/run/mysqld/mysqld.pid).

运行 sudo service mysql start 出现如上报错.

  1. 如果该目录不存在则创建 /var/run/mysqld
  2. 创建文件touch mysqld.pid
  3. chmod -R 777 /var/run/mysql
  4. 重启服务: sudo service mysql start

忘记mysql8.0 root 密码,如何重置

官网文档:B.3.3.2.3 Resetting the Root Password: Generic Instructions

参考: MySQL8.0 忘记 root 密码下如何修改密码

  1. 关闭mysql服务,使用 skip-grant-tables 跳过权限验证

vi /etc/mysql/mysql.conf.d/mysqld.cnf

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License, version 2.0, for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA

#
# The MySQL  Server configuration file.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
log-error       = /var/log/mysql/error.log

skip-grant-tables
  1. 重启mysql服务

sudo service mysql start

  1. 键入mysql进入mysql命令行

刷新权限表

flush privileges;

  1. 查看root用户和密码字段先将密码滞空

use mysql;

select host, user, authentication_string, plugin from user;

+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| host      | user             | authentication_string                                                  | plugin
       |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| localhost | mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.session    | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.sys        | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | root             | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B                              | mysql_native_password |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
4 rows in set (0.01 sec)

将旧密码滞空

update user set authentication_string='' where user='root';

  1. 删除skip-grant-tables限制,重启mysql服务,重连mysql,并重置密码

use mysql;

FLUSH PRIVILEGES;

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

配置全局pip镜像

linux

~/.pip/pip.conf

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn

windows

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

免责声明:文章转载自《WSL2 配置及ubuntu18.04安装mysql8.0+》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇C4model实践总结DES加密下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

jquery滚动条加载数据

//滚动条 $(window).scroll(function () { var scrollTop = $(this).scrollTop(); var scrollHeight = $(document).height(); var windowHeight = $(this).height(); var data = $("#n").text();...

Mysql全文索引的使用

前言 在MySQL 5.6版本以前,只有MyISAM存储引擎支持全文引擎.在5.6版本中,InnoDB加入了对全文索引的支持,但是不支持中文全文索引.在5.7.6版本,MySQL内置了ngram全文解析器,用来支持亚洲语种的分词. 在学习之前,请确认自己的MySQL版本大于5.7.6.我的版本为5.7.20.同时文中的所有操作都基于InnoDB存储引擎....

达梦数据库:第一章:MySQL数据库与达梦数据库的区别

达梦数据库管理系统是达梦公司推出的具有完全自主知识产权的高性能数据库管理系统,简称DM,它具有如下特点: 1、通用性达梦数据库管理系统兼容多种硬件体系,可运行于X86、X64、SPARC、POWER等硬件体系之上。DM各种平台上的数据存储结构和消息通信结构完全一致,使得DM各种组件在不同的硬件平台上具有一致的使用特性。达梦数据库管理系统产品实现了平台无关性...

转 mysql mysql命令行中执行sql的几种方式总结

https://www.jb51.net/article/96394.htm 1.直接输入sql执行 MySQL> select now(); +---------------------+ | now() | +---------------------+ | 2013-09-18 13:55:45 | +---------------------...

动画开发之PIXI开发

简单的移动小游戏只要引入pixi.min.js就可以, 如果要用spine动画(龙骨也支持导出spine格式的)就要引入pixi-spine.js 如果还有声音的支持引入pixi-sound.js 学习网址:   - 官网http://www.pixijs.com   - API http://pixijs.download/release/docs/...

ssh 免密码设置失败原因总结

先复习一下设置ssh免密码操作的步骤: 进入主目录 cd 生成公钥 ssh-keygen -t rsa -P '' (注:最后是二个单引号,表示不设置密码) 然后分发公钥到目标机器 ssh-copy-id -i ~/.ssh/id_rsa.pub 用户名@对方机器IP (注意不要忘记了参数-i) 注:ssh-copy-id -i 是最简单的办法,如果不用这...