• Linux(centos7)安装MySQL5.7


    Linux 安装MySQL5.7 数据库

    所有的安装方式是基于手动式的安装,也就是整体的下载然后配置

    rpm与yum之间的关系

    rpm 是Linux 免除编译安装带来的安装方式,而yum 是在rpm 上面的进一步的优化,换句话说yum 既包含了rpm 的简单安装,同时又由于依赖的相关性,将一个所有的rpm 与其相关的rpm 都进行了下载。

    下载MySQL

    在众多MySQL的版本中,8.0是现在最新的版本但安装的时候,我们大多采用的是老版本,这样更具有一定的向下的替代性,使得之前的老项目还可以接着运行,比较稳定和常用的MySQL版本是mysql5.7

    1、下载对应Linux 安装包

    yum install wget
    wget https://dev.mysql.com/downloads/file/?id=514029
    下载完后,首先要做的就是检查本主机是否存在MySQL相关的工具
    rpm -qa | grep mysql
    	若没有则证明没有安装过
    	否则:
    		rpm -e **
    		再删除相关的目录:
    		whereis mysql
    		find / mysql
    		rm **
    
    mariadb 是MySQL数据库的一个连带的子数据库,相关的Linux 系统中可能存在,所有我们要进行卸载。
    rpm -qa|grep mariadb
    rpm -e ***
    检查是否存在/etc/my.cnf 文件,这是MySQL 启动的时候,自动查找的相关的配置
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    2、安装对应的MySQL

    tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz -C  /usr/local/mysql5.7
    	-C 是对输出文件进行修订
    
    我们进入到对应的MySQL 的目录中
    建立data 的空文件夹
    cd bin
    ./mysqld --initialize --user=root --datadir=/usr/local/mysql5.7/data --basedir=/usr/local/mysql5.7
    这里要说明以下因为mysql 的安全机制,我们无法使用root 用户直接进行相关的启动,所有要加上 --user=root
    	同时我们也可以创建新的用户以及相关的用户组进行不同的域值添加
    	groupadd mysql
    	useradd -r -g mysql mysql
    	-r 数目添加用户的名字 
    	-g 添加到的组
    	我们同时移动到对应的文件目录的上一层,对 MySQL5.7 的文件进行权限的修改,并加上所需要的权重
    	chown -R mysql:mysql /usr/local/mysql5.7
    	chmod -R 775 /usr/loacl/mysql5.7
    	./mysqld --initialize --user=mysql --datadir=/usr/local/mysql5.7/data --basedir=/usr/local/mysql5.7
    初始化后得到对应的初始化的密码:
    	在创建好后,会在代码最后进行展示
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    3、相关的配置,确保数据库可以运行

    /etc/my.cnf
    一般MySQL 启动的时候都是从这个配置文件开始进行相关的配置检索,所有我们可以通过修改这里的参数进行修改相关的初始化条件
    	//在插入模式下编写,完成后保存,当然这个可以自己添加
    [mysqld]
    datadir=/usr/local/mysql5.7/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
    
    以上信息写在文件当中
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    同时,我们也要去MySQL5.7 目录下的,support-files 文件中看mysql-server 中的配置,在这里插入图片描述
    修改成自己对应的文件名称

    4、之后就可以启动了

    /etc/local/mysql5.7/support-files/mysql.server start
    
    • 1

    同时我们也可以建立对应的软连接

    ln -s /usr/local/mysql5.7/support-files/mysql.server /etc/init.d/mysql
    ln -s /usr/local/mysql5.7/bin/mysql /usr/bin/mysql
    //重启mysql服务
    service mysql restart
    
    • 1
    • 2
    • 3
    • 4

    5、登入MySQL 服务器,并修改密码

    mysql -u root -p
    临时密码,刚才建立初始数据库的时候进行的创建
    set password for root@localhost = password('root');
    update user set user.Host='%' where user.User='root';
    flush privileges;
    开放远程连接,并且重新刷新数据库
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    设置开机自启

    //将服务文件拷贝到init.d下,并重命名为mysql
    cp /usr/local/mysql5.7/support-files/mysql.server /etc/init.d/mysqld
    //赋予可执行权限
    chmod +x /etc/init.d/mysqld
    //添加服务
    chkconfig --add mysqld
    //显示服务列表
    chkconfig --list
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    6、防火墙开启或关闭

    开启:
    //开放3306端口命令
    firewall-cmd --zone=public --add-port=3306/tcp --permanent
    //配置立即生效
    firewall-cmd --reload
    关闭:
    systemctl stop firewalld   		本次的停掉
    systemctl disable firewalld		永久停掉
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    更多资料分享,毕设项目都有哈

    我们也有对应公众号:象目it

    小程序:象目it

  • 相关阅读:
    Java获取当前日期和时间
    快速掌握jmeter(二)——控制器与beanshell实现csv自动化测试模板
    【音频处理】Fast Convolution 快速卷积算法简介
    python入门(10)面向对象 :类的特殊方法
    基于go-micro微服务的实战-Gateway网关层的限流降级(八)
    0源码基础学习Spring源码系列(一)——Bean注入流程
    bundle文件压缩库的使用
    沃尔玛平台入驻条件,沃尔玛平台可以做哪些产品——站斧浏览器
    ubuntu安装配置mantis
    STM32问题记录-S50卡只能读取id,不能读取数据(未解决)
  • 原文地址:https://blog.csdn.net/weixin_45837168/article/details/127949584