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.mzph.cn/news/201038.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java数据结构之《哈希查找》(难度系数75)

一、前言: 这是怀化学院的:Java数据结构中的一道难度中等的一道编程题(此方法为博主自己研究,问题基本解决,若有bug欢迎下方评论提出意见,我会第一时间改进代码,谢谢!) 后面其他编程题只要我写完…

luceda ipkiss教程 39:修改版图text字体的粗细

通过修改font的line_width就可以修改版图中text字体的粗细: 代码如下: from si_fab import all as pdk import ipkiss3.all as i3class demo(i3.PCell):class Layout(i3.LayoutView):def _generate_elements(self, elems):elems i3.PolygonText(layer…

C练习题_12

一、单项选择题《本大题共20小题,每小题2分,共40分。在每小题给出的四个备选项中选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。) C 语言中程序的执行是从() A. 任意函数开始 B. 程序中的第一个函数开始 c.程序的第一条可执行语句开…

上海亚商投顾:沪指再度失守3000点 两市超4600只个股下跌

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 一.市场情绪 三大指数昨日全线调整,沪指再度失守3000点关口,创业板指尾盘跌近2%,北证50…

轨道交通故障预测与健康管理PHM系统的应用

轨道交通是现代城市中不可或缺的交通方式,它为人们提供了快速、高效和可靠的出行方式。然而,由于轨道交通系统的复杂性和高负荷运行,设备故障和运营中断问题时有发生。为了提高轨道交通系统的可靠性和安全性,故障预测与健康管理&a…

nacos启动报错 java.lang.RuntimeException: [db-load-error]load jdbc.properties error

以standalone mode sh startup.sh -m standalone 为例子 启动nacos 报错: Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcatat org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(To…

Siemens-NXUG二次开发-打开与关闭prt文件[Python UF][20231206]

Siemens-NXUG二次开发-打开与关闭prt文件[Python UF][20231206] 1.python uf函数1.1 NXOpen.UF.Part.Open1.2 NXOpen.UF.Part.LoadStatus1.3 NXOpen.UF.Part.Close1.4 NXOpen.UF.Part.AskUnits 2.示例代码3.运行结果3.1 内部模式3.2 外部模式 1.python uf函数 1.1 NXOpen.UF.P…

【PyTorch】优化分析

文章目录 1. 模型训练过程划分1.1. 定义过程1.1.1. 全局参数设置1.1.2. 模型定义 1.2. 数据集加载过程1.2.1. Dataset类:创建数据集1.2.2. Dataloader类:加载数据集 1.3. 训练循环 2. 优化分析2.1. 定义过程2.2. 数据集加载过程2.3. 训练循环2.3.1. 训练…

Python 中错误 ModuleNotFoundError: No Module Named Configparser

ModuleNotFoundError 是使用一些需要导入当前程序的内置功能、类、库和包时最常见的错误之一。 大多数情况下,您需要使用 import 关键字将这些内置功能导入到您当前的程序中; 但是,对于高级包和库,您将需要通过命令行界面 (CLI) …

财报解读:立足海外音视频直播战场,欢聚的BIGO盾牌还需加强?

如今,音视频社交平台出海早已不是新鲜事,随着时间推移,一批“坚定全球化不动摇”的企业也实现突围,站在出海舞台中心。 若提到中国企业出海范本,欢聚集团定是绕不开的存在。作为最早一批出海的中国互联网企业&#xf…

Socket和Http通信原理

Socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使用TCP/IP协议,主要利用三元组【ip地址,协议,端口】。 Http协议即超文本传输协议&a…

ATECLOUD电源自动测试系统打破传统 助力新能源汽车电源测试

随着新能源汽车市场的逐步扩大,技术不断完善提升,新能源汽车测试变得越来越复杂,测试要求也越来越严格。作为新能源汽车的关键部件之一,电源为各个器件和整个电路提供稳定的电源,满足需求,确保新能源汽车的…

[CAD]接下来导出一张高清大图

选择输出-范围,点击右侧绿色画框,划区一个范围 点击输出区域并设置右侧选项。 下图,大大大 页面设置替代-大大大 输出即可,可以说是非常的清晰了

剑指 Offer(第2版)面试题 18:删除链表的节点

剑指 Offer(第2版)面试题 18:删除链表的节点 剑指 Offer(第2版)面试题 18:删除链表的节点题目一:在 O(1) 时间删除链表结点题目二:删除链表中重复的节点 剑指 Offer(第2版…

学习springcloud时遇到java: 找不到符号 符号: 方法 getPname()

学习springcloud时异常-java: 找不到符号 符号: 方法 getPname() 学习springcloud时,遇到获取实体类属性值时出现异常。 项目目前分为两个子模块,一个是实体类模块,另一个是应用层。 在查询数据后,打印pname属性时报错&#xff…

LeetCode 每日一题 Day 4

2477. 到达首都的最少油耗 给你一棵 n 个节点的树(一个无向、连通、无环图),每个节点表示一个城市,编号从 0 到 n - 1 ,且恰好有 n - 1 条路。0 是首都。给你一个二维整数数组 roads ,其中 roads[i] [ai,…

【matlab程序】matlab画太极图|阴阳

【matlab程序】matlab画太极图|阴阳 %% 海洋与大气科学; % 时间:20231205; % clear;clc;close all; t=0:1/100000:2pi+0.00001; t1=-pi/2:1/100000:pi/2+0.00001; t2=pi/2:1/100000:3pi/2+0.00001; R=10; r=1; figure plot(Rcos(t),Rsin(t),‘color’,‘k’,‘lin…

Python爬虫技术:如何利用ip地址爬取动态网页

目录 一、引言 二、Python爬虫基础 三、动态网页结构分析 四、利用ip地址爬取动态网页 1、找到需要爬取的动态网页的URL结构 2、构造请求参数 3、发送请求并获取响应 4、解析响应内容 五、实例代码 六、注意事项 七、总结 一、引言 随着互联网的快速发展&#xff0…

并发集合框架

目录 前言 正文 1.集合框架结构 2. ConcurrentHashMap (1)验证 HashMap 不是线程安全的 (2)验证 Hashtable 是线程安全的 (3)验证 Hashtable 不支持并发 remove 操作 (4&#xff09…

MySQL 错误 1292 是什么?怎么解决?

MySQL错误 1292 是指插入或更新操作时,日期或时间值不正确引起的错误。这个错误通常是由于插入了无效的日期或时间格式导致的。 解决方式: 检查日期或时间格式是否正确:确保你插入或更新的日期或时间值的格式符合 MySQL 的要求,…