mysql编译安装(无毒)

一:部署mysql

1.yum安装

https://www.jianshu.com/p/c0b7a2b1f981

2.预编译安装

3.源码安装

官方手册的参数:https://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html#option_cmake_enabled_local_infile
#安装环境
yum install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake -y
> 创建数据库家目录
mkdir mysql
cd mysql/
> 下载源码安装数据库的插件
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-boost-5.7.19.tar.gz
> mysql下载源码包
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.24.tar.gz
> 解压
tar xf mysql-5.7.24.tar.gz
> 创建用户和组
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
> 准备编译安装
cd mysql-5.7.24/
mv ../boost_1_59_0.tar.gz .
tar xf boost_1_59_0.tar.gz

> 编译安装
cmake . \
-DWITH_BOOST=boost_1_59_0/ \                    构建 mysql 需要指定 boost 库
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \       指定安装目录
-DSYSCONFDIR=/etc \                             指定 my.cnf 文件目录
-DMYSQL_DATADIR=/usr/local/mysql/data \         指定 mysql 数据目录位置
-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 \                             指定包含的 SSL 支持的类型或要使用的
 openssl 安装的路径名。
-DWITH_EMBEDDED_SERVER=1 \                      编译使用 libmysqld 嵌入式库
-DENABLED_LOCAL_INFILE=1 \                      指定允许使用load data infile功能,就是加载本地文件
-DWITH_INNOBASE_STORAGE_ENGINE=1

make && make install
> 初始化
cd /usr/local/mysql/
mkdir mysql-files
chown -R mysql.mysql /usr/local/mysql

> 初始化
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

> 会有一个初始密码
/usr/local/mysql/bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
> 备份 my.cnf 文件
mv /etc/my.cnf /etc/my.cnf.bak
> 建立 mysql 配置文件
echo -ne "[mysqld]\nbasedir=/usr/local/mysql\ndatadir=/usr/local/mysql/data\n" > /etc/my.cnf
cd /usr/local/mysql/
> 拷贝启动脚本
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
service mysqld start
> 添加环境变量
echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile

忘记数据库密码

> 修改配置文件
vim /etc/my.cnf
skip-grant-tables

> 重启
service mysqld restart
> mysql

> 修改密码
update mysql.user 
set authentication_string=PASSWORD('123') where user='root' and host='localhost';

你可能感兴趣的:(mysql编译安装(无毒))