MySQL安装

不安分的黑娃 2021-11-25 17:50:23
安装 Mysql 博客园 数据库/缓存

MySQL安装

1.Linux 安装

1.1 mysql-8.0.26版本

官方文档安装说明:https://dev.mysql.com/doc/refman/8.0/en/linux-installation.html

个人习惯使用压缩包版本的,官方压缩包版本的安装说明文档:https://dev.mysql.com/doc/refman/8.0/en/binary-installation.html
下载地址:https://downloads.mysql.com/archives/community/

我这里选择 mysql-8.0.26-linux-glibc2.17-x86_64-minimal-rebuild.tar.xz 版本的mysql。
image

查看 glibc 版本命令: rpm -qa | grep glibc

如果之前安装过mysql 一定要确保安装的文件删除掉。注意需要删除 /etc/my.cnf 或者/etc/mysql 路径下的启动选项文件。

1.2 安装步骤

1.2.1 安装依赖包

(1)libaio

# 查找安装包
yum search libaio
# 安装 libaio
yum install libaio

image

(2)ncurses-compat-libs
mysql-VERSION-el7-x86_64.tar.gz 和 mysql-VERSION-linux-glibc2.12-x86_64.tar.xz 没有安装 lib64/libtinfo.so.5,所以需要手动安装

yum install ncurses-compat-libs
1.2.2 创建 mysql 用户和用户组
# 添加 mysql 用户组
groupadd mysql
# 添加 mysql 用户
# -r 创建一个系统账户
# -g 指定哪个用户组
# -s 用户登录的shell名
useradd -r -g mysql -s /bin/false mysql
1.2.3 解压 mysql-8.0.26-linux-glibc2.17-x86_64-minimal-rebuild.tar.xz

(1)将mysql-8.0.26-linux-glibc2.17-x86_64-minimal-rebuild.tar.xz 上传到服务器 /opt/mysql 路径下(路径你可以自己定义)。
(2)解压 mysql-8.0.26-linux-glibc2.17-x86_64-minimal-rebuild.tar.xz

# 切换到上传目录下
cd /opt/mysql/
# 解压压缩包
xz -d mysql-8.0.26-linux-glibc2.17-x86_64-minimal-rebuild.tar.xz
tar -xvf mysql-8.0.26-linux-glibc2.17-x86_64-minimal-rebuild.tar

image

# 重命名解压后文件夹
mv mysql-8.0.26-linux-glibc2.17-x86_64-minimal-rebuild mysql-8.0.26

image

1.2.4 切换到 /usr/local
cd /usr/local/
1.2.5 将 /opt/mysql/mysql-8.0.26/ 软链到 /usr/local/mysql
ln -s /opt/mysql/mysql-8.0.26/ mysql

image

1.2.6 切换到 /usr/local/mysql,并创建 mysql-files文件夹
cd mysql
# 其实在 /opt/mysql/mysql-8.0.26/下创建 mysql-files
mkdir mysql-files
# 将 mysql-files所有权赋给 mysql用户
chown mysql:mysql mysql-files
# 修改权限
chmod 750 mysql-files
1.2.7 初始化 mysql 数据目录
# 初始化数据目录,完成后安装目录下多了一个 data 文件夹。
bin/mysqld --initialize --user=mysql
bin/mysql_ssl_rsa_setup

image

注意:一定要记住这个临时密码。

1.2.8 mysqld_safe启动 mysql 服务
bin/mysqld_safe --user=mysql &

image

Ctrl + c 取消后,进行验证。

1.2.9 验证

(1) 查看 mysql 进程

ps -ef|grep mysql

image

(2)查看启动错误日志

cat /usr/local/mysql/data/192.168.188.134.err

image

(3) bin/mysqladmin 验证

 bin/mysqladmin -u root -p version
Enter password: (enter root password here)

但是报错:
image

改为 私用 mysql 连接数据库

bin/mysql -u root -p

image
登录成功。修改root密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

image
退出,重新登录后查看数据库:
image

再次使用bin/mysqladmin version验证:

 bin/mysqladmin -u root -p version
Enter password: (enter root password here)

image

1.2.10 MySQL workbench 连接数据库

(1)报错:无法连接服务器
image
解决方案:
可参考 《无法访问 CentOS7服务器上应用监听的端口》开启防火墙端口。

(2)使用root连接报错
image

参考 《centos7 打开mysql 3306端口并设置外部访问》centos7 打开mysql 3306端口并 设置外部访问

解决方法:

# 服务器使用root登录
/usr/local/mysql/bin/mysql -u root -p
# 输入密码,按回车
# 新增普通用户black(注意 一定是%而不是localhost,如果是localhost则只能本地访问)
create user 'black'@'%' identified by 'black';
# 给付权限
grant select,insert,update,delete,create,drop,alter,INDEX on *.* to 'black'@'%' ;
或
grant all privileges on *.* to 'black'@'%' with grant option;
# 刷新权限
flush privileges;

给用户赋权限,参考
https://www.cnblogs.com/xiaofengchu/p/8416173.html

使用 black 用户连接成功:
image

2.windows 安装

未完待续...

版权声明
本文为[不安分的黑娃]所创,转载请带上原文链接,感谢
https://www.cnblogs.com/lihw-study/p/15511141.html

  1. La distribution Linux d'Amazon est maintenant entièrement basée sur Fedora
  2. org.springframework.web.bind.MissingServletRequestParameterException
  3. Built in constraints and functions of MySQL Foundation (2)
  4. Basic operation of MySQL Foundation (I)
  5. Introduction to Java zero foundation 3: Java data types
  6. 从零开始搭建EasyDarwin环境——Linux系统开发环境搭建Golang
  7. Redis source Concise Analysis 02 - SDS String
  8. Construire l'environnement easydarwin à partir de zéro - - construire l'environnement de développement du système Linux golang
  9. javaweb代码是正确的,但是第一行代码就报错了
  10. **** | Java | 后端开挂:3行代码写出8个接口
  11. Java || 看了大二学长写的代码,我竟开始默默的模仿了。。。
  12. Java | 手把手教你实现一个抽奖系统(Java版)
  13. Java | Manuel pour vous apprendre à mettre en œuvre un système de loterie (version Java)
  14. Java | | après avoir lu le Code que j'ai écrit en deuxième année, j'ai commencé à imiter silencieusement...
  15. Java | back - end Pending: 3 - line Code write 8 Interfaces
  16. Le Code Web Java est correct, mais la première ligne de code est incorrecte
  17. Android网络编程之Http通信
  18. Android網絡編程之Http通信
  19. Http communication for Android Network Programming
  20. 数据结构实验八 领会图的两种主要储存结构和图的基本运算算法设计
  21. Hibernate数据校验简介
  22. The story of spring
  23. Il a dépensé 270 000 yuans pour soulever Xiaopeng p7 et a parcouru 3 627 km. Le propriétaire du véhicule a partagé 6 avantages et inconvénients.
  24. 阿里蚂蚁花呗团队面试题:spring+分布式+jvm+session+redis
  25. 【Java入门100例】14.字符串排序——compareTo()
  26. 【Java入门100例】13.修改文件扩展名——字符串替换
  27. Leetcode 79. Word Search [C + + / java detailed problem]
  28. Introduction à la vérification des données hibernantes
  29. Expérience de la structure des données
  30. Spring cloud gateway practice 2: more routing configuration methods
  31. Java network programming - summary overview
  32. 基于语法树的 Java 代码自动化插桩
  33. 云原生 Spring Boot 应用配置 Prometheus + Grafana 监控(保姆级)
  34. Spring cloud gateway practice 2: more routing configuration methods
  35. Jenkins file one line of code to deploy. Net program to k8s
  36. Java network programming - summary overview
  37. Cloud Native Spring Boot application configuration Prometheus + grafana Monitoring (baby - sitter)
  38. Insertion automatique de code Java basée sur l'Arbre syntaxique
  39. Le SUV phare de Xiaopeng, Xiaopeng G9, a fait ses débuts au salon de l'automobile et s'est tenu en position C dans la nouvelle force?
  40. Docker 从入门到实践系列四 - Docker 容器编排利器 Docker Compose
  41. 6年老猿带你掌握Spring Boot实现定时任务的动态增删启停
  42. disruptor笔记之六:常见场景,java教程从入门到精通pdf百度云
  43. Pourquoi InnoDB n'utilise - t - il pas un cache LRU naïf?
  44. Java Reflection (2): quelques opérations de base de reflection
  45. 6年老猿帶你掌握Spring Boot實現定時任務的動態增删啟停
  46. Les singes âgés vous permettent de maîtriser le démarrage et l'arrêt dynamiques des tâches programmées par Spring boot
  47. Docker From Beginning to Practice Series IV - docker Container chorégraphe Clean docker Composition
  48. 编写 java 程序,为家用电脑 ipv6 自动更新 goddy dns 记录(ddns)
  49. java jvm-old gc耗时几十s,导致系统告警
  50. Disruptor note 6: scénario commun, tutoriel Java de l'introduction à la maîtrise du PDF Baidu Cloud
  51. 编写Java程序启动脚本最佳实践
  52. How to get the correct Linux user's documents, music videos and other directories?
  53. Java JVM Old GC prend des dizaines de s, ce qui provoque une alarme système
  54. Écrivez un programme Java pour mettre à jour automatiquement les enregistrements DNS goddy (ddns) pour l'ordinateur domestique IPv6
  55. 編寫Java程序啟動脚本最佳實踐
  56. Meilleures pratiques pour écrire des scripts de démarrage de programmes Java
  57. Notes sur springcloud Eureka
  58. Ajout, suppression et modification simples de mybatis
  59. Java - carte mémoire de l'objet
  60. Why did docker lose to kubernetes? Docker employee readme!