准备工作
检查本地是否有mysql
rpm -qa | grep -i mysql
rpm -qa | grep -i maria
如果系统自带了mariadb,使用yum卸载它
下载mysql
# 切换到/opt下
cd /opt
# 下载mysql安装包, 如果下载很慢,可考虑使用迅雷下载,然后上传到服务器
wget https://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.60.tar.gz
下载cmake
wget https://cmake.org/files/v3.10/cmake-3.10.2.tar.gz
安装ncurses-devel
yum install -y ncurses-devel
安装cmake
tar zxvf cmake-3.10.2.tar.gz -C /usr/local
cd /usr/local/cmake-3.10.2
./configure
gmake && gmake install
在进行到./configure时,会报一个错误:Error when bootstrapping CMake:Cannot find a C++ compiler supporting C++11 on this system...
这是没有装c++编译器,使用yum安装
yum install gcc gcc-c++
安装mysql
编译安装
tar zxvf mysql-5.5.60.tar.gz
cd mysql-5.5.60
cmake . -DCMAKE_INSTALL_PREFIX=/opt/mysql-5.5.60 -DMYSQL_DATADIR=/opt/mysql-5.5.60/data -DMYSQL_UNIX_ADDR=/opt/mysql-5.5.60/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DENABLED_LOCAL_INFILE=ON -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_FAST_MUTEXES=1 -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DWITH_EMBEDDED_SERVER=1 -DWITH_DEBUG=0
make && make install
添加mysql用户和组
groupadd mysql
# -s /sbin/nologin 表示禁止该用户登录,加强安全; -g mysql 指定属于mysql组; -M 表示不创建用户家目录
useradd mysql -s /sbin/nologin -M -g mysql
目录授权
chown -R mysql:mysql /opt/mysql-5.5.60/
拷贝文件
cd /opt/mysql-5.5.60/support-files
cp my-small.cnf /etc/my.cnf
cp mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
配置环境变量
vim /etc/profile
# 在PATH后追加后保存
:$PATH:/opt/mysql-5.5.60/bin
# 环境变量生效
source /etc/profile
初始化mysql
cd /opt/mysql-5.5.60/scripts
./mysql_install_db --basedir=/opt/mysql-5.5.60 --datadir=/opt/mysql-5.5.60/data --user=mysql
执行这一步的时候会报错:没有权限
只要给mysql_install_db文件755权限就行
chmod 755 mysql_install_db
启动mysql
/etc/init.d/mysqld start
配置登录密码
mysqladmin -u root password 123456
设置开机自启动
chkconfig mysqld on
chkconfig --list mysqld
登录mysql
mysql -u root -p
重启mysql
systemctl restart mysqld