CentOS中安装数据库

1.下载

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

按如图选择,然后点击Download
在这里插入图片描述

这里它让我们登录,我们直接选择不登录,直接下载
在这里插入图片描述

2.关闭防火墙

systemctl disable firewalld

3.正式安装

  1. 切换到/usr/local
cd /usr/local
  1. 创建mysql文件夹,并进入里面
mkdir mysql ; cd mysql
  1. 将刚刚下载好的安装包导入里面,并解压
tar -xvf mysql-8.0.35-linux-glibc2.12-x86_64.tar.xz
  1. 重命名文件夹为:mysql-8.0
mv mysql-8.0.35-linux-glibc2.12-x86_64.tar.xz mysql-8.0
  1. /usr/local/mysql文件夹下创建data文件夹,存储文件
mkdir data
  1. 创建用户组、用户和密码

    groupadd mysql
    useradd -g mysql mysql
    
  2. 授权刚刚创建的用户

    chown -R mysql:mysql /usr/local/mysql/mysql-8.0
    
  3. 配置环境,编辑/etc/profile文件

    vim /etc/profile
    

    在最后一行加上:

    export PATH=$PATH:/usr/local/mysql/mysql-8.0/bin:/usr/local/mysql/mysql-8.0/lib
    
  4. 使配置文件生效

    source /etc/profile
    
  5. 编辑my.cnf文件

    vim /etc/my.cnf
    

    加入以下信息

    [mysql]
    default-character-set=utf8
    [client]
    socket=/var/lib/mysql/mysql.sock
     
    [mysqld]
    port=3306
    user=mysql
    general_log = 1
    general_log_file= /var/log/mysql/mysql.log
    socket=/var/lib/mysql/mysql.sock
    basedir=/usr/local/mysql/mysql-8.0
    datadir=/usr/local/mysql/data
    log-bin=/usr/local/mysql/data/mysql-bin
    innodb_data_home_dir=/usr/local/mysql/data
    innodb_log_group_home_dir=/usr/local/mysql/data/
    character-set-server=utf8mb4
    lower_case_table_names=1
    autocommit=1
    default_authentication_plugin=mysql_native_password
    symbolic-links=0
     
    [mysqld_safe]
    log-error=/usr/local/mysql/data/mysql.log
    pid-file=/usr/local/mysql/data/mysql.pid
    
  6. 切换到/usr/local/mysql/mysql-8.0/bin

    cd /usr/local/mysql/mysql-8.0/bin
    
  7. 安装libaio环境

    yum install -y libaio
    
  8. 初始化基础信息,得到数据库的初始密码(在/usr/local/mysql/mysql-8.0/bin目录下执行)

     ./mysqld --user=mysql --basedir=/usr/local/mysql/mysql-8.0 --datadir=/usr/local/mysql/data/ --initialize
    

    在这里插入图片描述

  9. 将mysqld服务添加到系统中,并赋予权限

    cd /usr/local/mysql/mysql-8.0
    cp -a ./support-files/mysql.server /etc/init.d/mysql
    
    chown 777 /etc/my.cnf
    chmod +x /etc/init.d/mysql
    chkconfig --add mysql
    
  10. 检查一下/var/lib/mysql是否存在,否则进行创建

    mkdir /var/lib/mysql
    
  11. 赋予其权限

    chown -R mysql:mysql /var/lib/mysql
    
  12. 启动数据库

    systemctl start mysql # 启动mysql
    systemctl status mysql # 查看mysql状态
    

    在这里插入图片描述

    进入数据库

    mysql -u root -p
    

    输入刚刚初始化好的密码:V:s:pkjCm9AO

    成功进入!

    在这里插入图片描述

  13. 重置root密码

    这里我设成了与Linux登录密码一致

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456qqq.';
    
  14. 配置root远程登录

    # 第一次设置root远程登录,并配置远程密码使用如下SQL命令
    create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码!';	-- 密码需要符合:大于8位,有大写字母,有特殊符号,不能是连续的简单语句如123,abc
    
    # 后续修改密码使用如下SQL命令
    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
    

    远程登录成功!

    在这里插入图片描述

  15. 退出MySQL控制台界面

    exit # 退出命令
    
    # 或者通过快捷键退出:ctrl + d
    
  16. MySQL默认绑定了3306端口,可以通过端口占用检查MySQL的网络状态

    netstat -anp | grep 3306
    

    在这里插入图片描述

4.补充

MySQL 8.0中,root用户默认不能直接创建数据库。这是因为MySQL 8.0引入了一个新的安全功能,即用户只能对自己拥有的数据库进行操作。

  1. 使用 CREATE USER 命令创建一个新用户,并赋予该用户对指定数据库的所有权限。例如,创建一个名为 newuser 的用户,并许其在所有数据库上创建表和数据库:

    CREATE USER 'newuser'@'%' IDENTIFIED BY 'your password';
    
    GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%' WITH GRANT OPTION;
    
    # 刷新权限,生效
    FLUSH PRIVILEGES;
    
  2. 如果需要让root用户能够直接创建数据库,可以修改mysql 库中的user 表,将root 用户的Host字段设置为%,并将 create_priv 字段的值设置为Y。请注意,这种方法会降低系统的安全性不建议在生产环境中使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值