一、下载安装相关资源包
tar zxf mysql-boost-5.7.31.tar.gz %解压下载好的tar包
yum install -y cmake %编译器
yum install -y ncurses-devel
yum install -y gcc-c++
yum install -y bison
二、编译、安装
1.指定参数编译
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_BOOST=/root/mysql-5.7.31/boost/boost_1_59_0/ %编译参数可选
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ %安装目录
-DMYSQL_DATADIR=/usr/local/mysql/data \ %数据库存放目录
-DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock \ %Unix socket 文件路径
-DWITH_MYISAM_STORAGE_ENGINE=1 \ %安装 myisam 存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ %安装 innodb 存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \ %安装 archive 存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ %安装 blackhole 存储引擎
-DWITH_PARTITION_STORAGE_ENGINE=1 \ %安装数据库分区
-DENABLED_LOCAL_INFILE=1 \ %允许从本地导入数据
-DWITH_READLINE=1 \ %快捷键功能
-DWITH_SSL=yes \ %支持 SSL
-DDEFAULT_CHARSET=utf8 \ %使用 utf8 字符
-DDEFAULT_COLLATION=utf8_general_ci \ %校验字符
-DEXTRA_CHARSETS=all \ %安装所有扩展字符集
-DMYSQL_TCP_PORT=3306 \ %MySQL 监听端口
2.安装
make
make install
[root@server1 mysql-5.7.31]# cd /usr/local/mysql/
[root@server1 mysql]# ls
bin include LICENSE mysql-test README-test support-files
docs lib man README share
[root@server1 mysql]# du -sh
1.9G . %占用空间比较大
3.相关配置
[root@server1 mysql]# cd support-files/
[root@server1 support-files]# ls
magic mysqld_multi.server mysql-log-rotate mysql.server
[root@server1 support-files]# cp mysql.server /etc/init.d/mysqld %根据你的主机内存复制 mysql 配置文件
[root@server1 support-files]# ll /etc/init.d/mysqld
-rwxr-xr-x 1 root root 10576 Mar 28 15:50 /etc/init.d/mysqld
[root@server1 mysql-5.7.31]# cd mysql-test/
[root@server1 mysql-test]# cd include/
[root@server1 include]# vim /etc/my.cnf %编辑文件,设置基本配置
[root@server1 ~]# vim .bash_profile %添加环境变量(注意路径)
[root@server1 ~]# source .bash_profile %使环境变量生效
[root@server1 ~]# cd /usr/local/mysql/
[root@server1 mysql]# useradd -u 1001 -M -d /usr/local/mysql/data -s /sbin/nologin mysql %添加数据库用户
[root@server1 mysql]# mysqld --initialize --user=mysql %初始化,产生初始登陆密码
[root@server1 mysql]# /etc/init.d/mysqld start %开启mysqld
[root@server1 mysql]# mysql_secure_installation %按提示完成 mysql 安全设置
Enter password for user root: %输入上述步骤产生的初始登陆密码
New password: %创建新密码
Re-enter new password:
Press y|Y for Yes, any other key for No:
Change the password for root ? ((Press y|Y for Yes, any other key for No) :
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
- Dropping test database...
Success.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.
All done!
4.登录查看
[root@server1 mysql]# mysql -p
Enter password: %用上面设置的新密码登陆
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.7.31 Source distribution
Copyright (c) 2000, 2020, 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> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
mysql>