前言
请务必先把整篇文章通读一遍,特别是后面的问题列表,以致于在安装过程中出现问题后不会心惊胆颤。
0.在安装mysql之前,查看是否已安装,及其删除方式
rpm -qa|grep mysql #查看旧版本MySQL
rpm -e --nodeps 查出的文件名称 #逐个删除旧组件
whereis mysql #查看残留的目录
rm -rf 目录名称 #删除目录
yum remove mysql-libs #yum删除方式,假如用的是yum安装方式
centos7安装mysql-5.7.24 开始:
将 mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz上传到centos服务器
1.解压安装
tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz #解压
mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql #启动目录、重命名
2.创建mysql用户/组
cd /usr/local/mysql
mkdir data
groupadd mysql
useradd -g mysql mysql -s /sbin/nologin -d /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql #将mysql目录所属用户指定为mysql用户
3.初始化mysql
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
#记住上面命令产生的临时密码,后面会用到。如临时密码为: qp(L&j0v*Qo%
#创建RSA private key:
bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
4.修改配置文件
cp -rf /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
cp /etc/my.cnf /etc/my.cnf.bak
vi /etc/my.cnf
my.cnf文件修改为如下:
[mysqld]
#datadir=/var/lib/mysql
#socket=/var/lib/mysql/mysql.sock
character_set_server=utf8
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port=3306
socket=/tmp/mysql.sock
5.启动mysql
service mysql start #开启服务
其他相关命令:
service mysql stop 停止服务
service mysql status 查看状态
service mysql restart 重启服务
6.连接mysql并设置root密码
cd /usr/local/mysql/bin
./mysql -u root -p
[输入临时密码,回车]
#设置root用户密码:
set password for 'root'@'localhost'=password('123456');
grant all privileges on *.* to 'root'@'%' identified by '123456';
flush privileges ;
7.设置mysql服务自开机启动
chkconfig mysql on
8.配置mysql环境变量
执行命令:vi /etc/profile
,按i
键进入编辑模式,在文件末尾添加内容:
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin
按Esc
键退出编辑模式,接着按:
输入wq
指令,保存并退出
source /etc/profile #使以上配置生效
自此,mysql安装完成
问题汇总
有意思的是当我们在不同的机器环境安装mysql的时候,因为自身的失误、或者环境因素导致偶尔出现会各种莫名其妙的问题。
so,这里记录某些问题的解决方式。
1.useradd:警告:此目录已经存在。
问题详述:
再添用户和组加时,提示:
useradd:警告:此主目录已经存在。
不从 skel 目录里向其中复制任何文件
正在创建信箱文件: 文件已存在
解决方式:不予理会,继续往下执行部署,亲测没有问题。
2.临时密码未生成,却安装成功,于是不知道用户密码、不能登录使用mysql(同忘记密码的解决方式)
问题详述:
在文章第3点,本应该生成的临时密码,突然没有生成。。。
解决方式:继续完成配置步骤后,参考:链接,修改密码。
3.mysqld初始化命令不管用
- 请确保使用的mysql版本为5.7+
- 进入mysql的bin目录,使用./mysqld尝试
4.使用mysql -u root -p命令,提示mysql命令不存在
参考文章第8点,确保mysql环境变量配置正确