centos安装mysql 5.7版本 详细

    centos安装mysql 5.7版本.

作者:EelBarb

链接:centos安装mysql 5.7版本

来源:CSDN

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

mysql安装


      1、下载适宜版本的mysql安装包


        下载地址:mysql安装

        关于具体选用,有rpm和tar两种安装方案

        rpm 包适用于 RedHat、CentOS、Fedora 等基于 RPM 包管理的 Linux 发行版。

        如果您使用的是其他 Linux 发行版,或者不希望使用 RPM 包管理器进行安装,可以选择使用 tar 的方式进行安装。

        这里我给出tar安装方式

       

        点击download安装tar包,或者在服务器上使用wget下载 (mysql-5.7.38-el7-x86_64.tar.gz)

    wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.38-el7-x86_64.tar.gz

没看懂 这个 /archives/get/p/23/file  哪里来的,浏览器直接输入,可以直接下载。


2、卸载系统自带的mariadb

听说,安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb

# 查看系统自带的Mariadb
rpm -qa|grep mariadb
 
# 卸载系统自带的Mariadb
# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
 
# 删除etc目录下的my.cnf ,一定要删掉,等下再重新建,之前我将就用这个文件,后面改配置各种不生效
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、解压并安装mysql

# 这里的安装目录是/usr/local
cd /usr/local
 
# 下载就不说了,把它丢到同目录即可,/usr/local,这里给的mysql-5.7.27的安装
 
# 解压
tar -zxvf mysql-5.7.27-el7-x86_64.tar.gz
 
# 改名
mv mysql-5.7.27-el7-x86_64 mysql
 
# 更改所属用户
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql
 
# 创建mysql数据、日志目录等
# 这里装在/data/mysql里
mkdir -p /data/mysql/{data,logs,tmp}
 
# 将这些目录赋给mysql用户
chown -R mysql.mysql /data/mysql/

mkdir -p /data/mysql/{data,logs,tmp} 

这个不行就改成 

mkdir /data/mysql/data
mkdir /data/mysql/logs
mkdir /data/mysql/tmp

5、修改或创建mysql配置文件
  

这里给出最基础的配置,如有需要,自行增加

vi /etc/my.cnf


[client]
port=3306
socket=/data/mysql/tmp/mysql.sock
 
[mysqld]
user=mysql
 
port=3306 
 
basedir=/usr/local/mysql
datadir=/data/mysql/data 
socket=/data/mysql/tmp/mysql.sock
pid-file=/data/mysql/tmp/mysqld.pid
tmpdir=/data/mysql/tmp 
log-error=/data/mysql/logs/error.log
 
#设置大小写不敏感
lower_case_table_names=1
 
#解决mysqlsql_mode=only_full_group_by问题
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

这边不要有空格,可能会出现未知的错误。

6、配置环境

# 将mysql自带服务添加到系统服务中
cd /usr/local/mysql/support-files
cp mysql.server /etc/init.d/mysql
 
# 修改服务配置文件
vi /etc/init.d/mysql
 
# 添加以下内容
basedir=/usr/local/mysql
datadir=/data/mysql/data
 
# 注册开机启动服务
chkconfig --add mysql
chkconfig --list
 
# 添加环境变量
echo "PATH=$PATH:/usr/local/mysql/bin " >> /etc/profile 
source /etc/profile

7、初始化数据库

# 初始化
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data
 
# 初始化的时候可能会报 libaio.so.1 的问题
# 这是缺少环境导致
# 你可以用yum -y update来全量更新,或使用yum install -y libaio libaio-devel来解决这个问题
 
# 获取临时密码
more /data/mysql/logs/error.log |grep password



8、启动mysql服务并更改密码、配置远程连接

# 启动mysql服务
service mysql start
 
# 使用初始密码登录mysql服务 并修改密码
# 后面输入自己的刚才看到的临时密码
mysql -uroot -p
 
 
# 更改root密码为root
# 还有些版本的指令是:GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION
alter user 'root'@'localhost' identified by 'root';
 
# 允许远程连接mysql
use mysql;
update user set host='%' where user='root';
 
# 刷新权限
flush privileges;

        这边可能出现mysql 不是对应命令,bash: mysql: command not found.   

查看已存在的环境变量目录

echo $PATH

执行

ln -s /usr/local/mysql/bin/mysql /usr/bin/ 

/usr/local/mysql/bin/mysql  是mysql安装目录下的

9、完成

# 启动mysql服务
service mysql start
 
# 停止mysql服务
service mysql stop
 
# 重启mysql服务
service mysql restart 

总结:

        设置my.cnf的时候,里面不要有空格。直接用虚拟机编辑的话,无法直接复制,考虑使用xshell连接后进行操作。mysql命令不支持的时候,把mysql内容,添加到/usr/bin里面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值