mysql源代码编译安装(可自拟版本)

  • mysql源代码编译安装(可自拟版本)已关闭评论
  • 177 次浏览
  • A+
所属分类:linux技术
摘要

centOS7 mysql5.6.40为例关闭防火墙的条件下1.yum安装2.rpm查询一下3.创建mysql用户,用于授权目录
-s /sbin/nologin 不允许用户进行任何交互操作
-M 不要自动创建用户的 home 目录
mysql 为用户名


mysql源代码编译安装(可自拟版本)

centOS7 mysql5.6.40为例

准备

关闭防火墙的条件下

1.yum安装

yum install ncurses-devel libaio-devel gcc make cmake -y 

2.rpm查询一下

rpm -qa ncurses-devel libaio-devel  

3.创建mysql用户,用于授权目录
-s /sbin/nologin 不允许用户进行任何交互操作
-M 不要自动创建用户的 home 目录
mysql 为用户名

useradd -s /sbin/nologin -M mysql 

查看用户是否已经存在

id mysql 

安装步骤

​ 在想要指定目录下载 这里我以/opt/mysql为例

cd /opt mkdir mysql cd mysql 

1.下载源码
可以换别的版本mysql官方下载链接 找到对应tar.gz包 点击download后复制下载连接即可

wget https://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.40.tar.gz 

mysql源代码编译安装(可自拟版本)

mysql源代码编译安装(可自拟版本)

2.解压缩安装mysql

tar -zxvf mysql-5.6.40.tar.gz  

3.进入mysql目录 cmake

cd mysql-5.6.40 
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.40 -DMYSQL_DATADIR=/application/mysql-5.6.40/data -DMYSQL_UNIX_ADDR=/application/mysql-5.6.40/tmp/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_EXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_unicode_ci -DWITH_ZLIB=bundled -DWITH_SSL=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DENABLE_DOWNLOADS=1 -DWITH_DEBUG=0 

mysql源代码编译安装(可自拟版本)

mysql源代码编译安装(可自拟版本)

4.cmake编译参数设置执行完后,就会自动生成makefile,可以执行

make 
make install 

5.创建软链接

ln -s /application/mysql-5.6.40/ /application/mysql 

6.mysql初始化操作

/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql 

7.使用mysql初始化自动生成的管理脚本

cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld cp /application/mysql/support-files/my-default.cnf /etc/my.cnf chmod 700 /etc/init.d/mysqld 

8.创建tmp 修改属主属组 启动mysql

mkdir -p /application/mysql/tmp chown -R mysql.mysql /application/mysql-5.6.40/  /etc/init.d/mysqld start  

9.添加到环境变量

vim /etc/profile 在最下面添加一行 export PATH=/application/mysql/bin:$PATH  保存退出 重新读取以下配置文件 source /etc/profile 

10.登录使用mysql

mysql -uroot -p 

mysql安全配置

修改密码 默认没有密码,不安全
注意:要先输入你的密码 这里密码为空直接回车

[root@localhost bin]# mysqladmin -uroot -p password Enter password:  New password:  Confirm new password:  

将mysql添加到系统服务

先把mysql关掉

/etc/init.d/mysqld stop 
vim /usr/lib/systemd/system/mysql.service 

注意这里的路径要跟你的安装路径一致 pid文件路径可以通过 开启mysql服务时 ps -ef | grep mysql来查看
PIDFile=/application/mysql-5.6.40/data/localhost.localdomain.pid
ExecStart=/application/mysql-5.6.40/support-files/mysql.server start

[Unit]  Description=Mysql  After=syslog.target network.target remote-fs.target nss-lookup.target  [Service]  Type=forking  PIDFile=/application/mysql-5.6.40/data/localhost.localdomain.pid  ExecStart=/application/mysql-5.6.40/support-files/mysql.server start  ExecReload=/bin/kill -s HUP $MAINPID  ExecStop=/bin/kill -s QUIT $MAINPID  PrivateTmp=false  [Install]  WantedBy=multi-user.target 
systemctl daemon-reload systemclt start mysql