Linux系统中安装MySQL

提前须知

windows系统中安装MySQL参考:https://blog.csdn.net/weixin_45583303/article/details/105252118

下面介绍Linux系统中安装MySQL

Linux版本的MySQL下载

下载地址:https://downloads.mysql.com/archives/community/

  • 我下载的版本如下:
    在这里插入图片描述

卸载系统自带的数据库

卸载系统自带的MySQL数据库

  • 使用下面的命令查找系统自带的MySQL数据库

    rpm -qa | grep mysql
    
  • 如果有,如下:

    mysql-libs-5.1.52-1.el6_0.1.x86_64
    
  • 直接卸载:

    rpm -e mysql-libs-5.1.52-1.el6_0.1.x86_64  // 普通删除模式
    rpm -e --nodeps mysql-libs-5.1.52-1.el6_0.1.x86_64  // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
    

卸载系统自带的 mariadb 数据库

  • 使用下面的命令查找系统自带的mariadb数据库

    rpm -qa | grep mariadb
    
  • 如果有,如下:

    mariadb-libs-5.5.56-2.el7.x86_64
    
  • 直接卸载

    rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
    

安装前准备

将下载好的安装包通过远程传输工具(xshell,xftp)传输到Linux系统上的/usr/lib目录中:

  • 如果没有访问该文件夹的权限,就修改一下,如下:
    在这里插入图片描述
  • 然后拖拽传输即可:
    在这里插入图片描述

解压MYSQL安装包

传输完毕,进入到/usr/lib文件夹下面解压文件,然后重命名为mysql5.7:

[root@localhost lib]# tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz 
[root@localhost lib]# mv mysql-5.7.30-linux-glibc2.12-x86_64 mysql5.7

创建MYSQL用户和用户组

  • 检查mysql组和用户是否存在,如无创建,则创建

    cat /etc/group | grep mysql
    
  • 执行添加命令创建mysql用户组

    groupadd mysql
    useradd -g mysql mysql  
    

创建data文件夹

/usr/lib/mysql5.7 ⽬录下创建一个文件夹,后续备⽤(存放数据库文件的文件夹):

mkdir data

修改MYSQL目录的归属用户

chown -R mysql:mysql ./

准备MYSQL的配置⽂件

  • /etc ⽬录下新建 my.cnf ⽂件

    touch /etc/my.cnf
    
  • 写⼊如下简化配置:

    [mysql]
    # 设置mysql客户端默认字符集
    default-character-set=utf8
    socket=/var/lib/mysql/mysql.sock
    [mysqld]
    skip-name-resolve
    #设置3306端⼝
    port = 3306
    socket=/var/lib/mysql/mysql.sock
    # 设置mysql的安装⽬录
    basedir=/usr/lib/mysql5.7
    # 设置mysql数据库的数据的存放⽬录
    datadir=/usr/lib/mysql5.7/data
    # 允许最⼤连接数
    max_connections=200
    # 服务端使⽤的字符集默认为8⽐特编码的latin1字符集
    character-set-server=utf8
    # 创建新表时将使⽤的默认存储引擎
    default-storage-engine=INNODB
    lower_case_table_names=1
    max_allowed_packet=16M
    
  • 修改 my.cnf ⽂件,添加上面的配置:

    i开始输入,设置完成之后按esc退出,然后按wq保存退出

    vim my.conf
    
  • 同时使⽤如下命令创建 /var/lib/mysql ⽬录,并修改权限:

    mkdir /var/lib/mysql
    chmod 777 /var/lib/mysql
    

正式开始安装MYSQL

转到/usr/lib/mysql5.7目录下,执行下面的初始化命令:

cd /usr/lib/mysql5.7

./bin/mysqld --initialize --user=mysql --basedir=/usr/lib/mysql5.7 --datadir=/usr/lib/mysql5.7/data

在这里插入图片描述
注意:记住上⾯打印出来的 root 的密码(红框中的内容),后⾯⾸次登陆需要使⽤

复制启动脚本到资源目录

执⾏如下命令复制(注意在/usr/lib/mysql5.7目录下执行):

cp ./support-files/mysql.server  /etc/init.d/mysqld

并修改 /etc/init.d/mysqld ,修改其 basedirdatadir 为实际对应⽬录:

basedir=/usr/lib/mysql5.7
datadir=/usr/lib/mysql5.7/data

设置MySQL系统服务并开启⾃启

⾸先增加 mysqld 服务控制脚本执⾏权限:

chmod +x /etc/init.d/mysqld

同时将 mysqld 服务加⼊到系统服务:

chkconfig --add mysqld

最后检查 mysqld 服务是否已经⽣效即可:

chkconfig --list mysqld

在这里插入图片描述

这样就表明 mysqld 服务已经⽣效了,在2、 3、 4、 5运⾏级别随系统启动⽽⾃动启动,以后可以直接使⽤ service 命令控制 mysql 的启停。

启动MySQL

直接执⾏:

service mysqld start

在这里插入图片描述

将MySQL的BIN目录加入PATH 环境变量

这样⽅便以后在任意⽬录上都可以使⽤ mysql 提供的命令。

编辑 /.bash_profile ⽂件,在⽂件末尾处追加如下信息:

vim ~/.bash_profile
# 追加的内容如下
export PATH=$PATH:/usr/lib/mysql5.7/bin/

最后执⾏如下命令使环境变量⽣效

source ~/.bash_profile

首次登陆MySQL

root 账户登录 mysql ,使⽤上⽂安装完成提示的密码进⾏登⼊,先执行下面的代码,然后输入密码:

mysql -u root -p

在这里插入图片描述
接下来修改root账户密码,在mysql的命令⾏执⾏如下命令即可,密码可以换成你想⽤的密码即可:

mysql>alter user user() identified by "12345678";
mysql>flush privileges;

设置远程主机登录

MySQL默认是不能远程登录的,我们需要设置一下,如下:

mysql> use mysql;
mysql> update user set user.Host='%' where user.User='root';
mysql> flush privileges;

开放3306端口号

sudo firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --reload

测试远程连接

使⽤NAVICAT等⼯具进⾏测试即可
在这里插入图片描述

后记

安装MySQL的时候需要配置的地方有两个:

  • 脚本文件:mysql.server
    • 配置mysql的安装路径
    • 配置mysql的data文件夹路径
  • 配置文件:my.cnf
    • 配置mysql的端口号等

先说配置脚本文件的作用:如果想在终端的任何地方都可以使用mysql命令启动MySQL数据库,需要将mysql的脚本配置文件(mysql.server)配置到/etc/init.d/mysql目录下面,这个文件夹原本在[安装数据库的文件夹]/support-files/mysql.server,为了安全,我们可以拷贝一份到/etc/init.d/mysql下,命令如下:

cp cp -r /usr/lib/mysql.7/support-files/mysql.server  /etc/init.d/mysql  

再来说一下配置文件:为什么可以在/etc目录下使用MySQL的配置文件?

  • 查看Linu下mysql的安装位置 which mysql
$ which mysql
/usr/lib/mysql5.7/bin/mysql	  #返回结果
  • 查看mysql默认配置文件的位置(需要使用前面命令的查询结果):
[前面的返回结果] --verbose --help |grep -A 1 'Default options'
$ /usr/lib/mysql5.7/bin/mysql  --verbose --help |grep -A 1 'Default options'
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf 
  • 这句话是,默认选择从下面给出的位置,优先级为从左到右,越来越低。
/etc/my.cnf > /etc/mysql/my.cnf > /usr/local/mysql/etc/my.cnf > ~/.my.cnf 
  • 通过上面可以看出mysql读取配置文件路径的顺序以及位置,因此我们就可以在/etc下面自己创建一个配置文件my.cnf,MySQL数据库启动的时候就可以读取到。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

彤彤的小跟班

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值