一、引语
随着科技的进步,当下社会的发展可以说是日新月异,伴随着问题就是数据信息量的飞速增长,mysql数据库在这种环境下孕育而生。MySQL 是一种流行的开源关系型数据库管理系统,被广泛用于各种应用程序和网站开发。它具有强大的功能和灵活性,以及大型社区支持,使得它成为许多开发人员和组织的首选数据库解决方案。
二、安装MySQL数据库的安装
学习MySQL数据库的之前我们肯定要去安装MySQL数据库,MySQL安装方法主要就以下三种:源码安装、rpm安装和二进制安装。接下来就来介绍一下rpm安装和源码编译安装的过程。
1、rpm安装(基于清华大学源安装)
先cd 到 /etc/yum.repos.d/目录下
cd /etc/yum.repos.d/
vim创建打开yum.repo文件,粘贴下面内容到文件中
[mysql]
name=mysql
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/
gpgcheck=0
enabled=1
gpgkey=https://mirrors.ustc.edu.cn/mysql-repo/RPM-GPG-KEY-mysql
在使用yun命令直接下载就可以了
yum -y install mysql-community-server
下载完成后,就可以对MySQL数据库进行初始化(在启动MySQL数据库过程中进行初始化)
systemctl start mysqld
systemctl disable mysqld
在初始化结束后,我们可以去/var/lib/mysql/*目录下查看是否初始化文件
完成上述操作,我们就可以/var/log/mysql.log文件下找初始密码
grep password /var/log/mysql.log
由于使用初始密码登录MySQL数据库无法进行读写操作,所以我们需要在登录之前进行修改密码。
mysqladmin -uroot -p'初始密码' password '修改密码'
因为MySQL数据库对密码是有复杂度要求,所以在实验环境下我们可以对其进行弱密码设置。但是生产环境不建议开启,以下为关闭密码限制的操作:
vim到/etc/my.conf文件中,在尾行添加 “validate_password=off”这一行即可。
到这里我们rpm安装数据库就完成了。
2、源码编译安装
源码安装之前我们需要清理机器的安装环境
yum erase mariadb mariadb-server mariadb-libs mariadb-devel -y
userdel -r mysql
rm -rf /etc/my*
rm -rf /var/lib/mysql
清理好环境我们可以进行正式安装了
在安装之前,我们需要创建一个用户用来管理和登录mysql
useradd -r mysql -M -s /sbin/nologin
账户创建成功后我们就可以安装MySQL数据库所需的编译工具和依赖
yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake
安装完依赖我们还要创建mysql目录
mkdir -p /usr/local/{data,mysql,log}
解压mysql安装包
tar -vih mysql-boost-5.7.37.tar.gz -C /usr/local
再cd到/usr/local/mysql-boots-5.7.37/ 目录下进行编译
cmake . \
-DWITH_BOOST=boost/boost_1_59_0/ \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DINSTALL_MANDIR=/usr/share/man \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1
MySQL数据库编译安装可以带很多指定参数,下面我来详细列出来
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ 安装目录
-DSYSCONFDIR=/etc \ 配置文件存放 (默认可以不安装配置文件)
-DMYSQL_DATADIR=/usr/local/mysql/data \ 数据目录 错误日志文件也会在这个目录
-DINSTALL_MANDIR=/usr/share/man \ 帮助文档
-DMYSQL_TCP_PORT=3306 \ 默认端口
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ sock文件位置,用来做网络通信的,客户端连接服务器的时候用
-DDEFAULT_CHARSET=utf8 \ 默认字符集。字符集的支持,可以调
-DEXTRA_CHARSETS=all \ 扩展的字符集支持所有的
-DDEFAULT_COLLATION=utf8_general_ci \ 支持的
-DWITH_READLINE=1 \ 上下翻历史命令
-DWITH_SSL=system \ 使用私钥和证书登陆(公钥) 可以加密。 适用与长连接。坏处:速度慢
-DWITH_EMBEDDED_SERVER=1 \ 支持嵌入式数据库
-DENABLED_LOCAL_INFILE=1 \ 从本地倒入数据,不是备份和恢复。
-DWITH_INNOBASE_STORAGE_ENGINE=1 默认的存储引擎,支持外键
使用make -j4 && make install进行编译安装
make -j4 && make install
如果安装出错,想重新安装:不用重新解压,只需要删除安装目录中的缓存文件CMakeCache.txt
上述操作成功后,我们的编译安装就完成了
三、结语
在这篇博客中,我们介绍了MySQL的安装过程以及一些常见的配置和操作。MySQL是一个功能强大的关系型数据库管理系统,广泛应用于各种应用程序和网站开发中。
MySQL作为一种开源的数据库管理系统,具有广泛的社区支持和丰富的文档资源。如果你在使用MySQL过程中遇到了问题,可以通过查阅官方文档、参与社区讨论或寻求专业的技术支持来解决。
总之,MySQL是一款功能强大且易于使用的数据库管理系统,它为开发人员和数据专业人士提供了丰富的功能和灵活性。希望这篇博客能够帮助你快速入门MySQL,并在你的项目中发挥作用。
如果你对MySQL还有其他问题或需要更深入的学习,建议你继续探索MySQL的各种功能和高级用法。祝你在使用MySQL的过程中取得成功!