源码包安装MySQL
1检查无yum安装的MySQL
[root@cetos02 ~]# rpm -q mariadb mariadb-server mariadb-server
未安装软件包 mariadb
未安装软件包 mariadb-server
未安装软件包 mariadb-server
2 安装 ncurses-devel gcc gcc-c++ make 依赖包
[root@cetos02 ~]# yum -y install ncurses-devel gcc gcc-c++ make
3 安装配置工具cmake
[root@cetos02 ~]# yum -y install cmake
4 创建程序用户
[root@cetos02 ~]# useradd -M -s /sbin/nologin mysql
5安装mysql源码包
[root@cetos02 ~]# tar xf mysql-5.7.24.tar.gz -C /usr/src/
将boost安装在/usr/local/boost
[root@cetos02 ~]# mkdir /usr/local/boost
[root@cetos02 ~]# tar xf boost_1_59_0.tar.gz -C /usr/local/boost/
编译安装
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DSYSCONFDIR=/etc-DWITH_BOOST=/usr/local/boost && make && make install
6 命令优化软连接
[root@centos3 local]# ln -s /usr/local/mysql/bin/* /usr/bin/
7 创建程序用户设置权限
[root@centos3 local]# useradd -M -s /sbin/nologin mysql
[root@centos3 local]# chown -R mysql:mysql mysql/
8 修改/etc/my.cnf文件
[root@centos3 local]# vim /etc/my.cnf
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/mysql/data/mysql.log
pid-file=/usr/local/mysql/data/mysql.pid
9 初始化
[root@centos3 ~]# /usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
--user=mysql \\指定用户身份
--basedir=/usr/local/mysql 指定安装目录
--datadir=/usr/local/mysql/data \\指定数据目录
--initialize \\设置初始化
10创建启动脚本文件
[root@centos3 local]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@centos3 local]# chmod +x /etc/init.d/mysqld
[root@centos3 local]# chkconfig --add mysqld
[root@centos3 local]# systemctl start mysqld
11 更改MySQL密码
[root@centos3 ~]# mysqladmin -uroot -p'OCWJd#qTf05s' password
启动服务
[root@centos3 ~]# mysqld_safe --skip-grant-tables & \\不验证用户名和密码
查看root数据
mysql> select user,authentication_string from mysql.user where user='root';
+------+-------------------------------------------+
| user | authentication_string |
+------+-------------------------------------------+
| root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+------+-------------------------------------------+
更改root密码
mysql> update mysql.user set authentication_string=password('cheng258369') where user='root';
查看进程
[root@centos3 ~]# ps -aux |grep mysqld
杀死进程
Kill -9 进程号
启动MySQL
[root@centos3 ~]# systemctl start mysqld