Loading... ## Mysql ### 一、介绍 不想多说 ### 二、安装方式 yum方式安装 rpm方式安装 源码包安装 **本文采用第三种方式,其他方式待考究。** 部署配置如下: - CentOs 7.6 - 2U8G - 单节点 - 安装版本为5.7.25 ### 三、安装步骤 PS:CentOs7系统自带有MariaDB,需要提前将其删除 ```shell #查询已安装的mariadb版本 rpm -qa|grep mariadb #删除 rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64 #安装依赖,numactl.x86_64 yum -y install numactl.x86_64 ``` #### 3.1.下载源码包 下载地址:https://dev.mysql.com/downloads/mysql/ - 本地下载 - linux服务器上使用命令: ```shell wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz ``` #### 3.2.解压安装包 ```shell tar -xvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz #修改文件夹名称 mv mysql-5.7.25-linux-glibc2.12-x86_64 mysql ``` #### 3.3.创建数据目录 ```shell #进入mysql目录, 本文为以下目录 cd /app/mysql #创建数据目录,下方配置会使用该目录地址 mkdir data ``` #### 3.4.创建mysql用户 此步若需,可以省略 ```shell #查看所有用户组信息是否存在mysql组,不存在则创建,存在则直接新建用户 cat /etc/group #新建一个msyql组 groupadd mysql #查看是否存在mysql用户 cat /etc/passwd|grep mysql #添加mysql用户至mysql组 useradd -g mysql mysql #授予mysql用户mysql的安装目录权限 chown -R mysql:mysql /app/mysql/ ``` #### 3.5.初始化数据库 ```shell #进入mysql安装包bin目录 cd /app/mysql/bin ./mysqld --initialize --user=mysql --basedir=/app/mysql --datadir=/app/mysql/data #初始化成功后,打印日志最后一行有root账号初始密码信息,需保留。 ``` PS:异常情况1: ```shell ./mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory #解决方式如下: #移除libnuma.so.1依赖,CentOs自带的是32位版本,此处需要64位版本 yum remove libnuma.so.1 #重装依赖 yum -y install numactl.x86_64 ``` 将mysql加入系统服务 ```shell cp /app/mysql/support-files/mysql.server /etc/init.d/mysql ``` #### 3.6.配置my.cnf my.cnf,mysql的核心配置文件,主要分为以下几部分 - mysqld - client - mysqld_safe - mysqldump - mysql - myisamchk - mysqlhotcopy 在/etc目录下创建my.cnf文件,也可重其他地方复制。并修改如下: ```properties [mysqld] character_set_server=utf8 init_connect='SET NAMES utf8' basedir=/app/mysql datadir=/app/mysql/data socket=/app/mysql/data/mysql.sock #不区分大小写 lower_case_table_names = 1 #不开启sql严格模式 sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" log-error=/app/mysql/logs/mysqld.log pid-file=/app/mysql/data/mysqld.pid ``` #### 3.7.添加开机启动 - 编辑/etc/init.d/mysql文件,加入以下内容 ```properties basedir=/usr/local/mysql datadir=/usr/local/mysql/data ``` - 启动mysql ```shell service mysql start #service mysql stop 停止mysql #查看3306端口 netstat -na | grep 3306 ``` - 添加开机自启 ```shell chkconfig --add mysql chkconfig mysql on ``` - 查看开机任务列表 ```shell chkconfig | grep -i mysql #如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则执行 chkconfig --level 345 mysql on #可以重启电脑进行验证mysql服务自启动情况。 ``` #### 3.8.连接验证 启动完成后,进入mysql客户端验证安装情况 ```shell #进入mysql安装目录bin目录,并执行 ./mysql -uroot -p #输入之前保留下的密码 #修改root账号密码,此处仅允许root账号在本地登录 alter user 'root'@'localhost' identified by '新密码'; #刷新权限 flush privileges; ``` PS:异常情况 ```shell Can't connect to local MySQL server through socket '/usr/local/mysql/mysql.sock' #my.cnf在前面章节未配置[client]相关参数,mysql命令会默认去该目录找socket文件。 #解决方式 #编辑my.cnf添加如下参数: [client] socket=/app/mysql/data/mysql.sock #重新执行客户端命令 ./mysql -uroot -p ``` #### 3.9.新库&新用户 ```sql --添加用户允许其在任意地址登录 CREATE USER 'hadoop'@'%' IDENTIFIED BY '123456'; --创建新数据库 CREATE DATABASE IF NOT EXISTS '库名' DEFAULT CHARACTER SET utf8 --授予该用户该库所有表权限 GRANT ALL PRIVILEGES ON 库名.* TO 'hadoop'@'%' IDENTIFIED BY '123456'; ``` 至此,单节点mysql已安装完成。 ### 四、springboot集成 #### 4.1.框架选择 待完成 #### 4.2.mybatisplus - pom配置 ```shell 待完成 ``` - springboot配置 ```yaml 待完成 ``` © Allow specification reprint Support Appreciate the author AliPayWeChat Like 0 If you think my article is useful to you, please feel free to appreciate
One comment
wawwawawa