--MYSQL_1)
目录一 .MYSQL的安装1.1简单介绍1.1.1MYSQL的概念1.1.2MYSQL的三要素1.1.3核心作用1.2.准备工作1.2.1提前删除系统中的mariadb否则会在后面的配置中出现错误1.2.1登录MYSQL官网下载 mysql8.0.36软件包并上传到linux系统当中1.3安装软件依赖1.3.1升级cmake到3.28.4版本1.3.2升级gcc到9.3.1版本1.3.3安装其他依赖软件包1.4编译三部曲检查、编译和安装1.4.1.解压软件包1.4.2进入源码目录创建build目录并跳入build目录检查配置文件1.4.3编译makefile文件并安装二.mysql初始化2.1将mysql程序加入全局变量中2.2创建mysql组2.3编辑mysql配置文件2.4完成初始化2.5将mysqld的服务加入system管理工具当中(补充)2.6查看临时密码进行安全初始化登录mysql数据库三.部署phpmyadmin3.1简单介绍3.2下载phpmyadmin软件并解压3.3文件重命名3.4编辑nginx.conf文件3.5编辑php.ini文件3.6编辑config.inc.php文件3.7测试一 .MYSQL的安装1.1简单介绍1.1.1MYSQL的概念1.作用一个开源的关系型数据库管理系统RDBMS用于存储、管理和查询结构化数据。2.关系型数据库以表格形式把数据串联起来的数据库表与表之间通过关系关联1.1.2MYSQL的三要素组成数据库、表、行/列数据库按照特定数据结构组织、存储和管理数据的仓库。表数据库中存储数据的核心逻辑单元由行和列组成的二维数据结构。列定义了表中每一行数据所共有的一个具体属性。行行是表中存储的一条具体数据记录包含了该条记录所有列的具体值。1.1.3核心作用1.持久化存储将用户的数据、日志、订单等信息持久地保存到磁盘中。方便随时查询确保不会丢失。2.快速查询数据库中的数据可以被快速查询出来3.数据一致性确保数据不会出现错误在传输中不会丢失4.并发处理支持多用户、多应用同时读写数据。1.2.准备工作1.2.1提前删除系统中的mariadb否则会在后面的配置中出现错误yum remove -y mariadb1.2.1登录MYSQL官网下载 mysql8.0.36软件包并上传到linux系统当中2.1选择8.0.36版本的数据库选择source code源码下滑找到包含boostheaders的软件包并下载2.2将下载后的压缩包拖进linux系统中1.3安装软件依赖1.3.1升级cmake到3.28.4版本1.1删除旧版的cmake3yum remove -y cmake3 #删除旧版的cmake rm -f /usr/local/cmake1.2进入cmake官网下载3.28.4版本的cmake软件并解压到/usr/local/目录下tar zxf cmake-3.28.4-linux-x86_64.tar.gz -C /usr/local/1.3配置环境变量查看当前版本vim .bash_profile #添加环境变量 source .bash_profile cmake --version1.3.2升级gcc到9.3.1版本2.1下载src软件仓库yum install -y centos-release-scl2.2进入软件仓库源目录修改两个src文件替换成阿里云源cd /etc/yum.repos.d/ vim CentOS-SCLo-scl.repo vim CentOS-SCLo-scl-rh.repo yum repolist2.3安装依赖升级gcc检查gcc版本yum install -y devtoolset-9-gcc devtoolset-9-gcc-c scl enable devtoolset-9 bash #设置临时环境 which gcc gcc -v g -v1.3.3安装其他依赖软件包yum install -y libaio-devel patchelf1.4编译三部曲检查、编译和安装1.4.1.解压软件包tar zxf mysql-boost-8.0.36.tar.gz1.4.2进入源码目录创建build目录并跳入build目录检查配置文件cd mysql-8.0.36/ mkdir build cd build cmake .. -DCMAKE_C_COMPILER$(which gcc) -DCMAKE_CXX_COMPILER$(which g) -DCMAKE_INSTALL_PREFIX/usr/local/mysql -DMYSQL_DATADIR/data/mysql -DSYSCONFDIR/etc/mysql -DMYSQL_UNIX_ADDR/data/mysql/mysql.sock -DMYSQL_TCP_PORT3306 -DWITH_INNOBASE_STORAGE_ENGINE1 -DWITH_MYISAM_STORAGE_ENGINE1 -DWITH_PARTITION_STORAGE_ENGINE1 -DENABLED_LOCAL_INFILE1 -DCMAKE_CXX_FLAGS-O2 -DCMAKE_C_FLAGS-O2 -DWITH_BOOST../boost/boost_1_77_0 -DWITH_SYSTEMD1 -DWITH_SSL/usr/local/openssl -DWITH_ZLIBbundled -DWITH_LIBAIO1 -DDEFAULT_CHARSETutf8mb4 -DDEFAULT_COLLATIONutf8mb4_unicode_ci -DMYSQL_MAINTAINER_MODE0 -DWITH_DEBUG0 -DINSTALL_TESTS0 -DINSTALL_DOCS01.4.3编译makefile文件并安装make -j2 #这里查看你的内存添加最多为8G make install二.mysql初始化2.1将mysql程序加入全局变量中vim ~/.bash_profile source ~/.bash_profile mysql --version2.2创建mysql组创建一个mysql用户家目录位于/usr/local/mysql免密登录useradd -M -d /usr/local/mysql/ -s /sbin/nologin mysql id mysql2.3编辑mysql配置文件文件内容包含初始化时所需的文件的路径配置等mkdir /etc/mysql vim /etc/mysql/my.cnf2.4完成初始化创建该目录用于存放mysql初始化后的数据内容为/data/mysql目录授权mkdir -p /data/mysql chown mysql.mysql /data/mysql mysqld --defaults-file/etc/mysql/my.cnf --initialize #指定默认文件位置2.5将mysqld的服务加入system管理工具当中(补充)作用允许system工具管理mysqld服务cp mysql-8.0.36/build/scripts/mysqld.service /usr/lib/systemd/system systemctl daemond-load systemctl start mysqld systemctl status mysqld #查看是否成功 systemctl stop mysqld2.6查看临时密码进行安全初始化登录mysql数据库1.开启mysqld服务,查看/data/mysql目录下的mysql-error.log筛选出所需要的临时密码systemctl start mysqld cd /data/mysql cat mysql-error.log | grep password2.进行安全初始化mysql_secure_installation三.部署phpmyadmin3.1简单介绍1.作用phpmyadmin是一个基于 Web 的 MySQL 和 MariaDB 数据库管理工具你可以通过它来直观地管理数据库而无需在命令行中输入复杂的 SQL 语句。为数据库管理员和开发人员提供一个图形化、基于浏览器的操作界面。3.2下载phpmyadmin软件并解压wget https://files.phpmyadmin.net/phpMyAdmin/5.2.3/phpMyAdmin-5.2.3-all-languages.zip unzip phpMyAdmin-5.2.3-all-languages.zip -d /usr/local/nginx/html/3.3文件重命名cd /usr/local/local/html mv phpMyAdmin-5.2.3-all-languages/ phpmyadmin3.4编辑nginx.conf文件vim /usr/local/nginx/conf/nginx.conf nginx -t nginx -s reload3.5编辑php.ini文件作用告诉 PHP 扩展mysqli和pdo_mysql通过什么路径的本地 Socket 文件去连接 MySQL 数据库vim /usr/local/php/etc/php.ini systemctl reload php-fpm3.6编辑config.inc.php文件cp config.sample.ini.php config.ini.php vim $phpmyadmin/config.ini.php3.7mysql上创建一个用户用于登录create user root% identified by mysql_native_password by 123456; GRANT ALL PRIVILEGES ON *.* TO root% WITH GRANT OPTION; FLUSH PRIVILEGES;3.8测试输入你系统的用户名和密码