1、检查系统是否安装过mysql
//检查系统中有无安装过mysql rpm -qa|grep mysql //查询所有mysql 对应的文件夹,全部删除 whereis mysql find / -name mysql
2、卸载CentOS7系统自带mariadb
# 查看系统自带的Mariadb [root@CDH-141 ~]# rpm -qa|grep mariadb mariadb-libs-5.5.44-2.el7.centos.x86_64 # 卸载系统自带的Mariadb [root@CDH-141 ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64 # 删除etc目录下的my.cnf ,一定要删掉,等下再重新建,之前我将就用这个文件,后面改配置各种不生效 [root@CDH-141 ~]# rm /etc/my.cnf
3、检查有无安装过mysql 用户组,没有的话创建
//检查mysql 用户组是否存在 cat /etc/group | grep mysql cat /etc/passwd |grep mysql // 创建mysql 用户组和用户 groupadd mysql useradd -r -g mysql mysql
4、下载安装,从官网安装下载,我下载的位置在/usr/local/
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
5、解压安装mysql
tar -zxvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
顺便改一下名字mv mysql-5.7.31-linux-glibc2.12-x86_64 mysql
6、更改mysql 目录下所有文件夹所属的用户组和用户,以及权限
chown -R mysql:mysql /usr/local/mysql chmod -R 755 /usr/local/mysql
7、进入mysql/bin/目录,编译安装并初始化mysql,务必记住数据库管理员临时密码
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysq
8、编写配置文件 my.cnf ,并添加配置
进入配置文件
vi /etc/my.cnf
在插入模式下编写,完成后保存,当然这个可以自己添加,
[mysqld] datadir=/usr/local/mysql/data port = 3306 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES symbolic-links=0 max_connections=400 innodb_file_per_table=1 #表名大小写不明感,敏感为 lower_case_table_names=1
9、启动mysql 服务器
#查询服务 ps -ef|grep mysql ps -ef|grep mysqld #结束进程 kill -9 PID #启动服务 /usr/local/mysql/support-files/mysql.server start
10、添加软连接,并重启mysql 服务
//添加软连接 ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql //重启mysql服务 service mysql restart
11、登录mysql ,密码就是初始化时生成的临时密码
mysql -u root -p
12、修改密码,因为生成的初始化密码难记
注意: 分号(;) 结尾
set password for root@localhost = password('root');
12、开放远程连接
use mysql; update user set user.Host='%' where user.User='root'; flush privileges;
13、设置开机自启
//将服务文件拷贝到init.d下,并重命名为mysql cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld //赋予可执行权限 chmod +x /etc/init.d/mysqld //添加服务 chkconfig --add mysqld //显示服务列表 chkconfig --list