1.检查是否已安装过mysql
rpm -qa | grep mysql
没有输出表示没有安装过,若有输出则执行以下命令删除
rpm -e --nodeps 软件包名
若是centos7,系统自带Mariadb,验证并删除
rpm -qa | grepmariadb
rpm-e --nodeps 软件包名
也可通过yum remove命令删除
2.创建mysql用户
useradd mysql -r -s /sbin/nologin
设置为系统用户且不可登录,自动创建mysql用户组
3.从官网下载mysql安装包
选择合适的版本,我选择的是linux 5.7.30 64位
点击Download按钮到下载界面
复制链接地址,通过wget命令将安装包下载到/usr/local/src/目录下
cd /usr/local/src/
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
4.解压并修改目录名称为mysql
将解压后的mysql目录放到/usr/local/目录下
tar -xzvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gzmv mysql-5.7.30-linux-glibc2.12-x86_64 /usr/local/mysql
5.创建mysql数据目录并更改属性
mkdir /usr/local/mysql/datachown -R mysql:mysql /usr/local/mysqlchmod -R 755 /usr/local/mysql
6.编译安装并初始化mysql
需要提前安装依赖包libaio-devel
--basedir指定数据库服务程序目录,--datadir指定真实数据文件目录
yum install libaio-devel -y
cd/usr/local/mysql/bin
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
初始化完成后,务必记住输出日志末尾的密码,即root@localhost:后的字符串,这是数据库管理员临时密码,后面初次登录后需要修改密码。
7.编辑配置文件my.cnf
vim /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
port= 3306sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0max_connections=600innodb_file_per_table=1lower_case_table_names=1
8.启动mysql服务器
/usr/local/mysql/support-files/mysql.server start
出现 SUCCESS! 字样则表示启动成功
如果出现如下提示信息
Starting MySQL... ERROR! The server quit without updating PID file
查看是否存在mysql和mysqld的服务,如果存在,则结束进程,再重新执行启动命令
#查询服务ps -ef | grepmysqlps -ef | grepmysqld
#结束进程kill -9PID
#启动服务/usr/local/mysql/support-files/mysql.server start
如果还是报错,编辑 /etc/init.d/mysql,找到 start 模块,添加 --user=root 到 mysqld_safe 即可
9.添加客户端命令软连接
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
10.登录mysql,修改密码
初始密码为步骤6生成的临时密码
mysql -u root -p
Enter password:
mysql>set password for root@localhost = password('yourpass');
11.设置开机自动启动
#将服务文件拷贝到init.d下,并重命名为mysqldcp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
#赋予可执行权限chmod +x /etc/init.d/mysqld
#重启服务
service mysqld restart
#设置开机自启
chkconfig mysqld on
至此,可以通过mysql命令连接数据库了
mysql -u root -p