有强迫症只用最新版本,有错误就慢慢折腾吧.由于仅有的一台阿里云服务器用来跑项目了,所以这次就用的vmware15.5作为虚拟机来运行ubuntu20.04 server.
所有软件/包的安装能使用apt就尽量使用apt,不搞太复杂
第一次写文章不会注意样式和内容,请多多指教

一. ubuntu安装(这段几乎都是废话,[Done ]就vans了)

总结:默认设置,Done,设置软件源镜像,Continue,设置用户名密码,安装OpenSSH,reboot

  1. vm主页创建新的虚拟机,选择经典即可,选择从ubuntu官网下载的iso文件进行安装
    ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第1张
  2. 除了设置ubuntu的用户和密码需要手动设置,其他皆是默认,也可以按照自己的需求修改修改(下一步,下一步...,完成)
  3. 来到Ubuntu安装界面,语言选英语(就算有中文那也选英语,多学几个单词整挺好),Keyboard configuration默认然后Done (如果installer要更新那就更新下呗
  4. Network connection&configure proxy 我是没有修改直接Done,有需求的可以网上搜搜
  5. 镜像地址选阿里的(http://mirrors.aliyun.com/ubuntu),默认是(http://cn.archive.ubuntu.com/ubuntu)
  6. 磁盘设置就选择Use an entire disk使用这个磁盘然后Done
    ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第2张
  7. Stroage configuration也按默认设置(没学过linux,不太懂这些,先默认好了 > <)
    ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第3张
  8. 然后会弹出一个 Confirm destructive action,大致就是不给"后悔"机会,磁盘会被格式化,确认是否继续
    ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第4张
  9. 然后就是设置用户名和密码,密码不简单的最好拿东西记下!!!
    ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第5张
  10. [X]Install OpenSSH server,安装OpenSSH,其他默认即可
  11. Featured Server Snaps 特定的服务器快照可以勾选个热门的docker方便之后学习docker
    ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第6张
  12. Install complete界面等待其余安装任务完成,然后重启
    ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第7张
  13. 重启后输入刚刚设置的用户名和密码,Over
    ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第8张

二.Ubuntu Server安装后的基本设置

  1. 在启动ubuntu后,查看本机的ipv4地址,用xshell等进行连接
    ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第9张

    SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
  2. 设置时区

    sudo timedatectl set-timezone "Asia/Shanghai" #设置时区
    timedatectl status #查看时间状态,date -R 也可以

    ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第10张
    ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第11张

  3. 更新软件源的包列表和以安装的包

    sudo apt-get update
    sudo apt-get upgrade

  4. 安装net-tools sudo apt install net-tools

三.安装mysql8

  1. 安装mysql-server sudo apt install mysql-server
  2. 初始化配置信息 sudo mysql_secure_installation
    1. VALIDATE PASSWORD COMPONENT.....(使用密码强度校验组件) 输入: n
    2. New Password:(设置新密码,并重复一遍)
    3. Remove anonymous users (删除匿名用户) n
    4. Disallow root login remotely(拒绝远程root账号登录) n
    5. Remove test database and access to it(移除test数据库) n
    6. Reload privilege tables now (现在就重新载入权限表) y
      ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第12张
  3. 登入到数据库并配置远程访问
    1. sudo mysql -uroot -p #没有用sudo权限会拒绝访问
      ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第13张
    2. 配置root用户外网也可以连接并登录
      1. use mysql; # 操作是针对'mysql'这个特殊表
      2. update user set Host='%' where User='root'; # '%'代表任意ip可以连接
      3. GRANT ALL ON *.* TO 'root'@'%';
      4. FLUSH PRIVILEGES; # 刷新权限
        ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第14张
    3. 创建数据库,创建用户并授予数据库权限最后刷新下权限
      1. create database test_db;
      2. create user 'test1'@'%' identified by '123456';
      3. grant all privileges on test_db.* to 'test1'@'%';
      4. flush privileges;
    4. 如果使用物理机的Mysql Workbench连接不上mysql,得考虑下端口是不是开放 (错误排查!
      1. 使用net-tools sudo netstat -tupln 查看本机网络连接相关状态
        ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第15张
      2. 或者使用 sudo lsof -i:端口 来直接查看端口状态
        ubuntu server 20.04 安装以及mysql8.0.20的安装,配置,和错误解决 Linux 第16张
      3. 或者使用netstat -an|grep 3306 查看3306端口是否打开

        yuan@yuan:~$ netstat -an|grep 3306
        tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
        tcp6 0 0 :::33060 :: LISTEN

      4. 0.0.0.0:*是没打开,需要修改配置文件并注释 bind-address = 127.0.0.1 这一行
        1. sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf 按下i进入插入模式
        2. 注释 bind-address = 127.0.0.1这一行 (前面加个#)
        3. 按下Esc 键入:wq并回车保存
      5. 重启mysql sudo service mysql restart,并再次查看端口状态
      6. 地址变成::::3306类似的就是成功了
    5. 如果root用户仍然不让访问,参考底部链接4,修改加密规则,修改密码(可视化工具支持的加密方式的问题)
    6. 若安装mysql-sever有配置界面 选择5.x的加密方式就无此问题

相关链接

[1] 最新ubuntu server
[2] Ubuntu 19.04 安装 MySQL 8.0.16
[3] Ubuntu 18.04 开放指定端口
[4] mysql 8.0.11 用Navicat远程无法连接

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄