Mysql编译安装
创建目录
[root@db02 ~]# mkdir /server/tools -p
进入目录
[root@db02 ~]# cd /server/tools/
上传mysql源码包
[root@db02 tools]# rz
[root@db02 tools]# ll
mysql-5.6.40.tar.gz
解压mysql源码包
[root@db02 tools]# tar xf mysql-5.6.40.tar.gz
进入源码包目录
[root@db02 tools]# cd mysql-5.6.40/
创建目录
[root@db02 mysql-5.6.40]# mkdir /application
生成编译文件
[root@db02 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 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_ZLIB=bundled -DWITH_SSL=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DENABLE_DOWNLOADS=1 -DWITH_DEBUG=0
编译
[root@db02 mysql-5.6.40]# make
[root@db02 mysql-5.6.40]# echo $?
0
安装
[root@db02 mysql-5.6.40]# make install
创建mysql用户
[root@db02 mysql-5.6.40]# useradd mysql -s /sbin/nologin -M
做软链接
[root@db02 mysql-5.6.40]# ln -s /application/mysql-5.6.40 /application/mysql
进入其他文件目录
[root@db02 mysql-5.6.40]# cd /application/mysql/support-files
拷贝mysql配置文件
[root@db02 support-files]# my-default.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y
拷贝启动脚本
[root@db02 support-files]# cp mysql.server /etc/init.d/mysqld
进入初始化目录
[root@db02 support-files]# cd /application/mysql/scripts
初始化mysql
[root@db02 scripts]# ./mysql_install_db --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data
mkdir /application/mysql-5.6.40/tmp
授权mysql服务目录
[root@db02 scripts]# chown -R mysql.mysql /application/mysql*
添加环境变量
[root@db02 scripts]# vim /etc/profile.d/mysql.sh
export PATH="/application/mysql/bin:$PATH"
加载环境变量
[root@db02 scripts]# /etc/profile.d/mysql.sh
启动mysql
[root@db02 scripts]# etc/init.d/mysqld start
加入开机自启
[root@db02 scripts]# mysqld on
停止运行
[root@db02 scripts]# etc/init.d/mysqld stop
用systemctl启动
[root@db02 scripts]# /usr/lib/systemd/system/mysqld.service
加入
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=https://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000