当前位置: 首页 > news >正文

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/mysqlchown 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。请注意,这种方法会降低系统的安全性不建议在生产环境中使用。

http://www.lryc.cn/news/253656.html

相关文章:

  • GPT-Crawler一键爬虫构建GPTs知识库
  • 在微信小程序中如何改变默认打开的页面
  • Ardupilot开源飞控之VTOL之旅:配件试装
  • STM32-GPIO
  • MySQL的事务
  • go-carbon v2.2.14 发布,轻量级、语义化、对开发者友好的 Golang 时间处理库
  • 解决 IIS HTTP 403 错误问题
  • 字符设备驱动基础—并发控制
  • 5-Tornado入门、程序的原理图、tornado不能使用同步代码的演示
  • mysql原理--InnoDB记录结构
  • ES6基础语法
  • java8 常用code
  • docker 镜像管理
  • Jira 中如何修改时间为绝对时间
  • 班级查分软件制作教程:老师必备技能!
  • Linux 的性能调优的思路
  • 如何通过webdriver禁用浏览器定位功能
  • 网卡bonding绑定
  • flink运行报Exception in thread “main“ java.lang.IllegalStateException
  • 易点易动设备管理系统--提升设备备品备件管理效率的工具
  • 第二十一章——网络通信
  • Siemens-NXUG二次开发-打开与关闭prt文件[Python UF][20231206]
  • 2015年五一杯数学建模C题生态文明建设评价问题解题全过程文档及程序
  • java:slf4j、log4j、log4j2、logback日志框架的区别与示例
  • Mysql学习查缺补漏----02 mysql之DCL 数据控制语言
  • 【Flink基础】-- 延迟数据的处理
  • 通过keepalived+nginx实现 k8s apiserver节点高可用
  • JavaScript 数组
  • 【数据结构】二叉树的实现
  • 振弦采集仪在土体与岩体监测中的可靠性与精度分析