Linux下安装mysql

Linux下安装mysql

准备:

参考链接:https://blog.csdn.net/ztx114/article/details/124438831

linux系统:centos_8_5_x64_20G_alibase_20220428.vhd

mysql版本:mysql-8.0.29-linux-glibc2.12-x86_64.tar.xz

一、下载

https://dev.mysql.com/downloads/mysql/

在这里插入图片描述

二、解压

  1. 创建 /usr/local/mysql

    mkdir -p /usr/local/mysql
    
  2. 将下载好的mysql安装包放到/usr/local/mysql

  3. 解压安装

    解压 zx文件
    
    xz -d /usr/local/mysql/mysql-8.0.29-linux-glibc2.12-x86_64.tar.xz
    
    解压 tar文件
    tar -xvf /usr/local/mysql/mysql-8.0.29-linux-glibc2.12-x86_64.tar -C /usr/local/mysql
    
  4. 修改文件夹名称

    mv /usr/local/mysql/mysql-8.0.29-linux-glibc2.12-x86_64 /usr/local/mysql/mysql-8.0.29
    
  5. 创建data文件夹

    mkdir -p /usr/local/mysql/mysql-8.0.29/data
    
  6. 创建mysql用户组

    groupadd mysql
    
  7. 添加mysql用户

    useradd -g mysql mysql
    
  8. 授权用户

    chown -R mysql.mysql /usr/local/mysql/mysql-8.0.29
    
  9. 拷贝mysql.server/etc/init.d/mysql 添加mysqld服务到系统

    cp /usr/local/mysql/mysql-8.0.29/support-files/mysql.server /etc/init.d/mysql
    chmod +x /etc/init.d/mysql
    chkconfig --level 2345 mysql on #设置开启自动启动
    
  10. 新建 /etc/my.cnf

    vim /etc/my.cnf

    加入下面内容

    [client]  
    default-character-set=utf8mb4  
    #password   = your_password  
    port        = 3306 
    socket      = /tmp/mysql.sock  
    
    # The MySQL server   
    [mysqld]  
    
    #配置mysql的文件夹 和 mysql data目录
    basedir=/usr/local/mysql/mysql-8.0.29
    datadir=/usr/local/mysql/mysql-8.0.29/data
    default-storage-engine=INNODB  
    character-set-server=utf8mb4  
    collation-server=utf8mb4_general_ci  
    port        = 3306 
    socket      = /tmp/mysql.sock  
    skip-external-locking  
    key_buffer_size = 16K  
    max_allowed_packet = 64M  
    table_open_cache = 4 
    sort_buffer_size = 64K  
    read_buffer_size = 256K  
    read_rnd_buffer_size = 256K  
    net_buffer_length = 2K  
    thread_stack = 128K  
    bind-address = 0.0.0.0
    server-id   = 1 
    
    # Uncomment the following if you want to log updates  
    #log-bin=mysql-bin  
    
    # binary logging format - mixed recommended  
    #binlog_format=mixed  
    
    [mysqldump]  
    quick  
    max_allowed_packet = 64M  
    
    [mysql]  
    default-character-set = utf8mb4
    no-auto-rehash  
    # Remove the next comment character if you are not familiar with SQL  
    #safe-updates  
    
    [myisamchk]  
    key_buffer_size = 8M  
    sort_buffer_size = 8M  
    
    [mysqlhotcopy]  
    interactive-timeout 
    
  11. 初始化基础信息,最后一行后面会有个随机的初始密码保存下来一会登录要用(如果忘记了就删掉data重新初始化)

    cd /usr/local/mysql/mysql-8.0.29/bin/
    
    
    ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/mysql-8.0.29
    

    记住这个默认密码

    记住密码

./mysqld_safe --user=mysql

这里如果报错
> ./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

执行:
sudo ln -s /usr/lib64/libtinfo.so.6.1 /usr/lib64/libtinfo.so.5

或者:
出现该问题首先检查该链接库文件有没有安装使用 `rpm -qa|grep libaio`命令进行核查
运行该命令后发现系统中无该链接库文件
使用命令,安装----》
yum install libaio-devel.x86_64
  1. 将mysql命令添加到服务

    ln -s /usr/local/mysql/mysql-8.0.29/bin/mysql /usr/bin
    
  2. 连接数据库

    ./mysql -uroot -p
    
    **密码就是刚才记得默认密码**
    
  3. 修改数据库密码

    *sql*
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
    
    **刷新**
    flush privileges;
    
  4. 开放外网可以访问(如果不设置 用可视化工具连接数据库会报 1103错误)

    *sql*
    use mysql;
    
    update user set host='%' where user='root';
    
    *刷新*
    flush privileges;
    
  5. 开放端口限制(防火墙)

    firewall-cmd --add-port=3306/tcp --permanent
    firewall-cmd --reload
    
    注:阿里云,腾讯云等可以去平台直接开放端口   3306---默认
    
  6. mysql新建一个库—新建一个xuexi 库

    *sql*
    
    CREATE DATABASE xuexi;
    
  7. mysql新建一个用户—新建一个用户wblx,并默认开通远程连接权限,密码为hdzs0879520

    *sql*
    
    CREATE USER 'wblx'@'%' IDENTIFIED BY 'hdzs0879520';
    
  8. 给特定用户权限—限制了wblx用户只能看xuexi这个库下面的所有表

    *sql*
    
    GRANT all PRIVILEGES ON xuexi.* TO 'wblx'@'%';
    
    --------------
    xuexi.*   指定库.指定表
    *.*       即代表可以访问所有库的所有表(root)
    
  9. 常用命令

    service mysql start   #启动MySQL
    service mysql stop    #停止MySQL
    service mysql restart #重启MySQL
    service mysql status  #查看MySQL状态
    
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值