Linux中MySQL安装不成功_【数据库】Linux下MySQL安装(装不上你找我)-程序员宅基地

技术标签: Linux中MySQL安装不成功  

MySQL的安装

一、准备环境

//查看是否有MySQL相关依赖包

rpm -qa|grep -i mysql

//查看是否有MariaDB数据库管理系统,这个东西会影响MySQL的安装

rpm -qa|grep -i mariadb

//如果有上述相关依赖包,删除它

rpm -e 文件名

//如果删除失败,有相关使用

rpm -e xxxx --nodeps

//如果提示错误:error: %preun(xxxxxx) scriptlet failed, exit status 1

rpm -e --noscripts 文件名

//查找是否有MySQL安装历史遗留文件夹

find / -name mysql

//删掉他们

rm -rf xxxxx

//查看是否有MySQL用户组

cat /etc/group | grep mysql

//MySQL用户组密码

cat /etc/passwd |grep mysql

注1:rpm 类似npm yarn都是包管理工具,用于安装和管理依赖包

注2:/etc/group和/etc/passwd下的用户组是系统或服务正常运行所必需的用户,我们把这种用户称为系统用户或伪用户。系统用户是不能登录系统的,但是这些用户同样也不能被删除,因为一旦删除,依赖这些用户运行的服务或程序就不能正常执行,会导致系统问题。

二、安装MySQL

?本文安装的是MySQL5.7版本

配置文件:/etc/my.cnf

数据存储:/var/lib/mysql

命令文件:/usr/bin和/usr/sbin

数据库端口:3306

运行以下命令更新YUM源。

rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

运行以下命令安装MySQL。

yum -y install mysql-community-server

注:这里由于我的之前操作有遗留的yum module 导致报错 找不到资源

yum module disable mysql

运行以下命令查看MySQL版本号。

mysql -V

返回结果如下,表示MySQL安装成功。

mysql Ver 14.14 Distrib 5.7.26, for Linux (x86_64) using EditLine wrapper

三、配置MySQL

运行以下命令启动MySQL服务。

systemctl start mysqld

运行以下命令设置MySQL服务开机自启动。

systemctl enable mysqld

运行以下命令查看/var/log/mysqld.log文件,获取并记录root用户的初始密码。

grep ‘temporary password‘ /var/log/mysqld.log

执行命令结果示例如下。

2020-04-08T08:12:07.893939Z 1 [Note] A temporary password is generated for [email protected]: xvlo1lZs7>uI

注:说明下一步对MySQL进行安全性配置时,会使用该初始密码。

运行下列命令对MySQL进行安全性配置。

mysql_secure_installation

重置root用户的密码。

Enter password for user root: #输入上一步获取的root用户初始密码

The ‘validate_password‘ plugin is installed on the server.

The subsequent steps will run with the existing configuration of the plugin.

Using existing password for root.

Estimated strength of the password: 100

Change the password for root ? ((Press y|Y for Yes, any other key for No) : Y #是否更改root用户密码,输入Y

New password: #输入新密码,长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号。特殊符号可以是()` ~!@#$%^&*-+=|{}[]:;‘<>,.?/

Re-enter new password: #再次输入新密码

Estimated strength of the password: 100

Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y #是否继续操作,输入Y

删除匿名用户账号。

By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y #是否删除匿名用户,输入Y

Success.

禁止root账号远程登录。

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y #禁止root远程登录,输入Y

Success.

删除test库以及对test库的访问权限。

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y #是否删除test库和对它的访问权限,输入Y

- Dropping test database...

Success.

重新加载授权表。

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y #是否重新加载授权表,输入Y

Success.

All done!

四、访问MySQL数据库

1.运行以下命令后,输入root用户的密码登录MySQL。

mysql -uroot -p

2.依次运行以下命令创建远程登录MySQL的账号。示例账号为dms、密码为123456。

mysql> grant all on *.* to [email protected]%‘IDENTIFIED BY ‘123456‘; #使用root替换dms,可设置为允许root账号远程登录。

mysql> flush privileges;

MySQL常用操作

登入

mysql -u root -p 88888888

登出

mysql> exit

创建数据库

CREATE DATABASE [IF NOT EXISTS]

-> DEFAULT CHARACTER SET gb2312 //

-> DEFAULT COLLATE gb2312_chinese_ci; //

显示所有数据库

SHOW DATABASES [LIKE ‘数据库名‘];

修改数据库

ALTER DATABASE [数据库名] {

[ DEFAULT ] CHARACTER SET |

[ DEFAULT ] COLLATE }

删除数据库

DROP DATABASE [ IF EXISTS ]

切换数据库

USE [数据库名]

下节进入常用SQL语句

原文:https://www.cnblogs.com/alenghan/p/13193659.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39721009/article/details/113399978

智能推荐

c++ pair make_pair_make_pair返回值-程序员宅基地

文章浏览阅读193次。pair 的用法std::pair主要的作用是将两个数据组合成一个数据,两个数据可以是同一类型或者不同类型。C++标准程序库中凡是“必须返回两个值”的函数, 也都会利用pair对象。class pair可以将两个值视为一个单元。容器类别map和multimap就是使用pairs来管理其健值/实值(key/value)的成对元素。pair被定义为struct,因此可直接存取pair中的个别值..._make_pair返回值

微信公众号开发工具汇总-程序员宅基地

文章浏览阅读8.4k次。前面写了篇入坑指南,介绍了下开发微信公众号的基本流程。最近又捣鼓了一阵,发现这开发工具的选择对于提高开发效率真是有莫大的帮助,所谓“只要工具选得好,月底奖金跑不了”。今天得空,笔者就给各位老哥列举几个绝对能派上用场的小工具,保证没毛病!微信公众平台技术文档这货实际上是必需品,没了它,您还真是寸步难行。官方文档包含了一个产品最直接也最全面的说明,在微信公众平台技术文档中,详细说明了微信公众号开发的概念_微信公众号开发工具

获得硬盘ID(序列号、机器码)的C++代码源码_硬盘id获取 c++-程序员宅基地

文章浏览阅读612次。获得硬盘的序列号(ID/机器码)的C++源码_硬盘id获取 c++

VRRP协议介绍_vrrp是什么协议-程序员宅基地

文章浏览阅读1w次,点赞5次,收藏60次。1.VRRP的工作原理2.Master路由器和Backup路由器3.VRRP报文格式4.虚拟路由器中的虚拟IP地址和虚拟MAC 地址_vrrp是什么协议

Google Earth Engine谷歌地球引擎GEE栅格代数与NDVI波段计算手动求取_gee波段计算-程序员宅基地

文章浏览阅读2.9k次,点赞2次,收藏15次。  本文主要对GEE中的栅格代数与波段计算操作加以介绍。本文是谷歌地球引擎(Google Earth Engine,GEE)系列教学文章的第六篇,更多GEE文章请参考专栏:GEE学习与应用(https://blog.csdn.net/zhebushibiaoshifu/category_11081040.html)。  首先,依据第二篇GEE教学博客(https://blog.csdn.net/zhebushibiaoshifu/article/details/117296956)中内容,我们将Lands_gee波段计算

Vue2+Vue3(脚手架)_vue2对应的脚手架版本-程序员宅基地

文章浏览阅读1.3k次,点赞33次,收藏36次。组件化编码流程:​ (1).拆分静态组件:组件要按照功能点拆分,命名不要与html元素冲突。​ (2).实现动态组件:考虑好数据的存放位置,数据是一个组件在用,还是一些组件在用:​ 1).一个组件在用:放在组件自身即可。放在他们共同的父组件上(状态提升)。​ (3).实现交互:从绑定事件开始。props适用于:​ (1).父组件 ==> 子组件 通信​ (2).子组件 ==> 父组件 通信(要求父先给子一个函数)_vue2对应的脚手架版本

随便推点

Python与各个编程语言对比_python 对比其他语言-程序员宅基地

文章浏览阅读134次。高级语言将与计算机架构的交互抽象化,你可以输入代码字(code word,比如 for 循环或变量定义),高级语言会将其编译成计算机可以执行的代码,而低级语言会直接处理这些代码字。有许多用 Python 编写的框架与 Node.js 类似,像 Flask 和 Django,但 Node.js 是用 JavaScript 语言编写的。正因为这一点,我们选择用 Python。同时学习 R(或 MATLAB)和 Python,你可以根据具体项目需求来选择使用哪种语言,这样可以更好地满足项目的需求,也更加方便。_python 对比其他语言

QGIS基本功 | 21 QGIS工程文件属性设置(2)——坐标参照系、变换、默认样式、数据源、关系和变量_qgis如何以原始坐标系-程序员宅基地

文章浏览阅读4.5k次,点赞2次,收藏12次。今天继续分享工程文件属性的设置,包括工程坐标参照系、变换、默认样式、数据源、关系和变量六个部分。01坐标参照系工程坐标参照系定义了当前地图窗口所使用的坐标系,决定了如何将数据从其底层原始坐标绘制到QGIS地图画布中,并呈现为平面地图。QGIS支持自动动态投影,不管图层自带的坐标系是否与工程坐标系相同,均可自动重投影到当前工程坐标系,使数据可以正确叠加显示,这个过程对用户是完全透明的。因此,工程坐标系是各个图层正确显示的基础,为了使地图减少形变、正确反应现实世界地物的大小和相..._qgis如何以原始坐标系

我爱生煎包!--上海生煎-程序员宅基地

文章浏览阅读197次。对上海这个城市的印象,除了时尚、喧嚣、热闹,让人过目不忘的南京路上汹涌人潮,更多的是像电视剧《蜗居》中所展现出来的另一种风情。太阳初上的清晨,小弄堂里,各家各户陆续把自家大门打开,各自圾着拖鞋,拿着牙杯,走到公共水池边,开始洗漱。完事后,从家拿个小锅子,睡衣,去路边的小吃店买早饭。街边的那些小吃店,门口放着一个用汽油桶改造的大炉子,上面架着一个大大的平底锅,盖着厚实的木盖子,热气正袅袅的从锅中冒..._unable to open file 'calculatoreh.obj

BAT大厂python面试精选题,干货_python面试bat-程序员宅基地

文章浏览阅读152次。在如今的时代,运维不学Python,迟早会被淘汰!如果你想要专业的学习Python开发技术,更多需要的是付出时间和精力,应该根据自己的实际需求去实地看一下,下面总结了50到面试试题参考,希望能给你带来帮助。1. 2017 校招真题这部分包含了 37 道 2017 年的校招真题。每个题目都配备相应的 Python 实现。例如我们来看一个有趣的例子:餐厅.py2. 剑指 offer这部分共包含了 68 道剑指真题。请看示例:变态青蛙跳.py3. 华为机试..._python面试bat

C语言 时间汇总_竞赛在排名时,一般是按做题数排名,但当做题数相同时,则按做各题所花总时间进行排-程序员宅基地

文章浏览阅读1k次。题目描述竞赛在排名时,一般是按做题数排名,但当做题数相同时,则按做各题所花总时间进行排名。下面编程实现时间的汇总。输入先输入一个n(1<=n<=10),表示总共做出了n题。然后输入n个做出各题所花的时间,格式为HH:MM:SS,其中,HH表示时(00<=HH<10),MM表示分(00<=MM<=59),SS表示秒(00<=SS<=59)。输出输出将..._竞赛在排名时,一般是按做题数排名,但当做题数相同时,则按做各题所花总时间进行排

linux启动 profile,Linux 启动时profile、bashrc、~/.bash_profile、~/.bashrc、~/.bash_profile执行顺序以及文件说明...-程序员宅基地

文章浏览阅读1.7k次。Linux 启动时profile、bashrc、~/.bash_profile、~/.bashrc、~/.bash_profile执行顺序以及文件说明一、执行顺序登录linux时,/etc/profile、~/.bash_profile等几个文件的执行过程。如图所示:二、在登录Linux时要执行文件的过程如下:在刚登录Linux时,首先启动 /etc/profile 文件,然后再启动用户目录下的 ..._怎么运行profile文件

推荐文章

热门文章

相关标签