一.编译安装MySQL服务
1.安装环境依赖包
2.将安装mysql 所需软件包传到/opt目录下
mysql-boost-5.7.44.tar
tar zxvf mysql-boost-5.7.44.tar.gz
3.配置软件模块
cd /opt/mysql-5.7.44/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=boost \
-DWITH_SYSTEMD=1
注意:如果在CMAKE的过程中有报错,当报错解决后,需要把源码目录中的CMakeCache.txt文件删除,然后再重新CMAKE,否则错误依旧
4.编译及安装
make -j4 && make install
5.创建mysql用户
useradd -M -s /sbin/nologin mysql
6.修改mysql 配置文件
vim /etc/my.cnf #修改mysql 配置文件#删除原配置项,再重新添加下面内容
[client] #客户端设置
port = 3306
socket = /usr/local/mysql/mysql.sock [mysql] #服务端设置
port = 3306
socket = /usr/local/mysql/mysql.sock
auto-rehash #开启自动补全功能[mysqld] #服务全局设置
user = mysql #设置管理用户
basedir=/usr/local/mysql #指定数据库的安装目录
datadir=/usr/local/mysql/data #指定数据库文件的存储路径
port = 3306 #指定端口
character-set-server=utf8 #设置服务器字符集编码格式为utf8
pid-file = /usr/local/mysql/mysqld.pid #指定pid 进程文件路径
socket=/usr/local/mysql/mysql.sock #指定数据库连接文件
bind-address = 0.0.0.0 #设置监听地址,0.0.0.0代表允许所有,如允许多个IP需空格隔开
skip-name-resolve #禁止域名解析,包括主机名,所以授权的时候要使用 IP 地址
max_connections=4096 #设置mysql的最大连接数
default-storage-engine=INNODB #指定默认存储引擎
max_allowed_packet=32M #设置在网络传输中一次消息传输量的最大值。系统默认值为 1MB,最大值是 1GB,必须设置 1024 的倍数。
server-id = 1 #指定服务ID号
7.更改mysql安装目录和配置文件的属主属组
chown -R mysql:mysql /usr/local/mysql/
#将 /usr/local/mysql/ 目录下的所有文件和子目录的所有者更改为 mysql,所属组更改为 mysql。-R 选项表示递归地更改目录及其子目录和文件的所有者和所属组。
chown mysql:mysql /etc/my.cnf
#将 /etc/my.cnf 文件的所有者更改为 mysql,所属组更改为 mysql。
8.设置路径环境变量
chown -R mysql:mysql /usr/local/mysql/
#将 /usr/local/mysql/ 目录下的所有文件和子目录的所有者更改为 mysql,所属组更改为 mysql。-R 选项表示递归地更改目录及其子目录和文件的所有者和所属组。
chown mysql:mysql /etc/my.cnf
#将 /etc/my.cnf 文件的所有者更改为 mysql,所属组更改为 mysql。
9. 初始化数据库
cd /usr/local/mysql/bin/
./mysqld \
--initialize-insecure \ #生成初始化密码为空
--user=mysql \ #指定管理用户
--basedir=/usr/local/mysql \ #指定数据库的安装目录
--datadir=/usr/local/mysql/data #指定数据库文件的存储路径
----------------------------------------------------------------------------------------------------------
./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data
10. 添加mysqld系统服务
11.修改mysql 的登录密码
mysqladmin -u root password "abc123"
#给root账号设置密码为abc123,原始密码为空
mysql -u root -p
show databases; #查看当前已有的数据库