17.11 Linux MySQL安装

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: 本节,我们学习安装 Mysql 数据库,其安装步骤稍微复杂,我们逐步来进行解析。

本节,我们学习安装 Mysql 数据库,其安装步骤稍微复杂,我们逐步来进行解析。

1) 添加 mysql 用户和 mysql 用户组

命令如下:

[root@localhost ~]# groupadd mysql
\#添加mysql用户组
[root@localhost ~]# useradd -g mysql mysql
\#添加mysql用户,同时指定mysql用户的初始组是mysql组

这里添加的 mysql 用户和用户组是稍后用来给 MySQL 安装目录分配权限用的,所以并不需要设定密码,因为这个用户是不能直接登录 Linux 系统的。

2) 进入 MySQL 解压缩目录

[root@localhost ~]# cd /usr/local/src/mysql-5.5.23

3) 编译前配置

[root@localhost mysql-5.5.23]# cmake \ #命令
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定安装位置
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ #指定[socket](http://c.biancheng.net/socket/)(套接字)文件位置
-DEXTRA_CHARSETS=all \ #支持所有的扩展字符集
-DDEFAULT_CHARSET=utf8 \ #指定默认字符集
-DDEFAULT_COLLATION=utf8_general_ci \ #指定默认字符校对
-DWITH_MYISAM_STORAGE_ENGINE=1 \ #安装myisam存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #安装innodb存储引擎
-DWITH_MEMORY_STORAGE_ENGINE=1 \ #安装memory存储引擎
-DWITH_READLINE=1 \ #支持readline库
-DENABLED_LOCAL_INFILE=1 \ #启用加载本地数据
-DMYSQL_USER=mysql \ #指定MySQL运行用户
-DMYSQL_TCP_PORT=3306 #指定MySQL端口

4) 编译

[root@localhost mysql-5.5.23]# make

使用 cmake 进行编译。如果编译过程中出现了报错,则不再使用“make clean”命令清除缓存及临时文件,而是直接删除“rm-rf CMakeCache.txt”文件。

5) 编译安装

[root@localhost mysql-5.5.23]# make install

6) 生成MySQL的配置文件,并修改配置文件

这个配置文件不用手工建立,在 MySQL 安装目录中给我们准备了模板文件,只需把模板文件复制到指定位置并改名即可。命令如下:

[root@localhost mysql-5.5.23]#cp/usr/local/mysql/share/mysql/my-medium.cnf/etc/my.cnf

7) 修改 MySQL 安装目录的权限

[root@localhost mysql-5.5.23]# cd /usr/local/mysql/
\#进入MySQL安装目录
[root@localhost mysql]# chown -R mysql.
\#把当前目录下所有文件的所有者改为root用户
[root@localhost mysql]# chgrp -R mysql.
\#把当前目录下所有文件的所属组改为mysql组

8) 初始化数据库

源码包安装的 MySQL 中所有的数据库默认都保存在 /usr/local/mysql/data/ 目录中,MySQL 的初始数据库 mysql 库和 test 库也会保存在这个目录中。

但是,如果我们仔细查看 /usr/local/mysql/data/ 目录,就会发现这个目录中只有两个空目录,并没有任何数据。也就是说,MySQL 中的所有数据库是不存在的,那么这个 MySQL 是不能使用的,因为 MySQL 的所有用户是要保存在 user 表中的,而 user 表保存在 mysql 库中,而 mysql 库是保存在 /usr/local/mysql/data/ 目录中的。

那么,我们现在需要在 data 目录中建立 MySQL 的初始数据库。命令如下:

[root@localhost mysql]# /usr/local/mysql/bin/mysql_install_db --user=mysql
\#初始化数据库

这条命令的 --user 选项表示使用 mysql 用户来初始化数据库,这个用户要和我们在步骤一中建立的用户一致。命令执行完成之后,/usr/local/mysal/data/ 目录中应该会出现很多相应的数据,证明数据库初始化成功。

9) 继续修改MySQL安装目录的权限

[root@localhost mysql]# chown -R root.
\#把当前目录下所有文件的所有者改为root用户
\#注意:修改的目录依然是/usr/local/mysql/目录下的文件
[root@localhost mysql]# chown -R mysql data
\#把data目录的所有者改为mysql用户

10) 启动 MySQL 服务器,并保证 mysql 服务开机自启动

MySQL 服务器的安装已经完成,我们可以尝试启动 MySQL 服务器,命令如下:

[root@localhost mysql]# /usr/local/mysql/bin/mysqld_safe ——user=mysql &
\#使用mysql用户启动MySQL服务器,并在后台持续运行
[root@localhost mysql]# netstat -tlun | grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
\#3306端口已经开启了

当然,我们还要保证 mysql 服务开机自启动,命令如下:

[root@localhost mysql]# vi /etc/rc.local
\#修改自启动配置文件,加入如下的mysql服务标准启动命令
/usr/local/mysql/bin/mysqld_safe ——user=mysql &

11) 设定 MySQL 中 root 用户的密码,并登录

MySQL 的管理员也是 root,不过这只是数据库的管理员,不要和 Linux 的 root 用户混淆了。我们需要给 MySQL 的本地用户设定一个密码。设定密码的方式有很多种,我们使用 Linux 的命令 mysqladmin 设定 MySQL 的 root 用户的密码。命令如下:

[root@localhost mysql]# /usr/local/mysql/bin/mysqladmin -u root password 123
\#给MySQL的root用户设定密码为123
[root@localhost mysql]# /usr/local/mysql/bin/mysql -u root -p
\#使用root用户登录mysql
Enter password: #输入正确的密码
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version:5.1.59-community-log Source distribution
Copyright (c) 2000, 2011, Oracle and/or its affiliates.All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates.Other names may be trademarks of their respective owners.
Type 'help;' or '\h' for help.Type '\c' to clear the current input statement.
mysql>
\#看到了MySQL的交互界面
mysql> \s #查询服务器状态信息
…省略部分输出…
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
\#编码格式已经修改为UTF-8
…省略部分输出…
mysql> exit
\#退出MySQL
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
30天前
|
安全 Linux iOS开发
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
123 6
Nessus Professional 10.10 Auto Installer for RHEL 10, AlmaLinux 10, Rocky Linux 10 - Nessus 自动化安装程序
|
1月前
|
Ubuntu 关系型数据库 MySQL
MySQL源码编译安装
本文详细介绍了MySQL 8.0及8.4版本的源码编译安装全过程,涵盖用户创建、依赖安装、cmake配置、编译优化等步骤,并提供支持多Linux发行版的一键安装脚本,适用于定制化数据库部署需求。
190 4
MySQL源码编译安装
|
1月前
|
Ubuntu 关系型数据库 MySQL
MySQL二进制包安装
本文详细介绍了在多种Linux系统上通过二进制包安装MySQL 8.0和8.4版本的完整过程,涵盖用户创建、glibc版本匹配、程序解压、环境变量配置、初始化数据库及服务启动等步骤,并提供支持多发行版的一键安装脚本,助力高效部署MySQL环境。
198 4
MySQL二进制包安装
|
1月前
|
安全 关系型数据库 MySQL
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
本文详细介绍在openSUSE系统上通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,包括下载地址、RPM包解压、GPG密钥导入、使用rpm或zypper命令安装及服务启动验证,涵盖初始密码获取与安全修改方法,适用于无网络环境下的MySQL部署。
310 3
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
|
1月前
|
关系型数据库 MySQL Linux
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
本文介绍了在openSUSE系统上通过SUSE资源库安装MySQL 8.0和8.4版本的完整步骤,包括配置国内镜像源、安装MySQL服务、启动并验证运行状态,以及修改初始密码等操作,适用于希望在SUSE系列系统中快速部署MySQL的用户。
167 3
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
|
1月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
293 5
|
1月前
|
Ubuntu 关系型数据库 MySQL
MySQL包安装 -- Debian系列(离线DEB包安装MySQL)
本文详细介绍了在Ubuntu 24.04、22.04、20.04及Debian 12系统上,通过离线DEB包安装MySQL 8.0和8.4版本的完整步骤。涵盖下载地址、依赖处理、dpkg安装顺序、配置方法及服务启动验证,确保用户可顺利部署MySQL数据库。
504 0
MySQL包安装 -- Debian系列(离线DEB包安装MySQL)
|
1月前
|
运维 Ubuntu 关系型数据库
MySQL包安装 -- Debian系列(Apt资源库安装MySQL)
本文介绍了在Debian系列系统(如Ubuntu、Debian 11/12)中通过APT仓库安装MySQL 8.0和8.4版本的完整步骤,涵盖添加官方源、配置国内镜像、安装服务及初始化设置,并验证运行状态,适用于各类Linux运维场景。
507 0
MySQL包安装 -- Debian系列(Apt资源库安装MySQL)
|
1月前
|
Oracle 关系型数据库 MySQL
MySQL包安装 -- RHEL系列(离线RPM包安装MySQL)
本文详细介绍在Rocky、CentOS、AlmaLinux、openEuler等主流Linux系统上,通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,涵盖下载、依赖处理、rpm/yum安装、服务启动、密码设置等关键环节,适用于多种企业级环境部署需求。
537 0
MySQL包安装 -- RHEL系列(离线RPM包安装MySQL)
|
1月前
|
存储 关系型数据库 MySQL
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)
MySQL是一款开源关系型数据库,高性能、易用、跨平台,支持多种存储引擎,广泛应用于Web开发、企业级应用等领域。本教程介绍其特点、架构及在主流Linux系统中的安装配置方法。
461 0
MySQL介绍和MySQL包安装 -- RHEL系列(Yum资源库安装MySQL)