技术标签: 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
文章浏览阅读193次。pair 的用法std::pair主要的作用是将两个数据组合成一个数据,两个数据可以是同一类型或者不同类型。C++标准程序库中凡是“必须返回两个值”的函数, 也都会利用pair对象。class pair可以将两个值视为一个单元。容器类别map和multimap就是使用pairs来管理其健值/实值(key/value)的成对元素。pair被定义为struct,因此可直接存取pair中的个别值..._make_pair返回值
文章浏览阅读8.4k次。前面写了篇入坑指南,介绍了下开发微信公众号的基本流程。最近又捣鼓了一阵,发现这开发工具的选择对于提高开发效率真是有莫大的帮助,所谓“只要工具选得好,月底奖金跑不了”。今天得空,笔者就给各位老哥列举几个绝对能派上用场的小工具,保证没毛病!微信公众平台技术文档这货实际上是必需品,没了它,您还真是寸步难行。官方文档包含了一个产品最直接也最全面的说明,在微信公众平台技术文档中,详细说明了微信公众号开发的概念_微信公众号开发工具
文章浏览阅读612次。获得硬盘的序列号(ID/机器码)的C++源码_硬盘id获取 c++
文章浏览阅读1w次,点赞5次,收藏60次。1.VRRP的工作原理2.Master路由器和Backup路由器3.VRRP报文格式4.虚拟路由器中的虚拟IP地址和虚拟MAC 地址_vrrp是什么协议
文章浏览阅读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波段计算
文章浏览阅读1.3k次,点赞33次,收藏36次。组件化编码流程: (1).拆分静态组件:组件要按照功能点拆分,命名不要与html元素冲突。 (2).实现动态组件:考虑好数据的存放位置,数据是一个组件在用,还是一些组件在用: 1).一个组件在用:放在组件自身即可。放在他们共同的父组件上(状态提升)。 (3).实现交互:从绑定事件开始。props适用于: (1).父组件 ==> 子组件 通信 (2).子组件 ==> 父组件 通信(要求父先给子一个函数)_vue2对应的脚手架版本
文章浏览阅读134次。高级语言将与计算机架构的交互抽象化,你可以输入代码字(code word,比如 for 循环或变量定义),高级语言会将其编译成计算机可以执行的代码,而低级语言会直接处理这些代码字。有许多用 Python 编写的框架与 Node.js 类似,像 Flask 和 Django,但 Node.js 是用 JavaScript 语言编写的。正因为这一点,我们选择用 Python。同时学习 R(或 MATLAB)和 Python,你可以根据具体项目需求来选择使用哪种语言,这样可以更好地满足项目的需求,也更加方便。_python 对比其他语言
文章浏览阅读4.5k次,点赞2次,收藏12次。今天继续分享工程文件属性的设置,包括工程坐标参照系、变换、默认样式、数据源、关系和变量六个部分。01坐标参照系工程坐标参照系定义了当前地图窗口所使用的坐标系,决定了如何将数据从其底层原始坐标绘制到QGIS地图画布中,并呈现为平面地图。QGIS支持自动动态投影,不管图层自带的坐标系是否与工程坐标系相同,均可自动重投影到当前工程坐标系,使数据可以正确叠加显示,这个过程对用户是完全透明的。因此,工程坐标系是各个图层正确显示的基础,为了使地图减少形变、正确反应现实世界地物的大小和相..._qgis如何以原始坐标系
文章浏览阅读197次。对上海这个城市的印象,除了时尚、喧嚣、热闹,让人过目不忘的南京路上汹涌人潮,更多的是像电视剧《蜗居》中所展现出来的另一种风情。太阳初上的清晨,小弄堂里,各家各户陆续把自家大门打开,各自圾着拖鞋,拿着牙杯,走到公共水池边,开始洗漱。完事后,从家拿个小锅子,睡衣,去路边的小吃店买早饭。街边的那些小吃店,门口放着一个用汽油桶改造的大炉子,上面架着一个大大的平底锅,盖着厚实的木盖子,热气正袅袅的从锅中冒..._unable to open file 'calculatoreh.obj
文章浏览阅读152次。在如今的时代,运维不学Python,迟早会被淘汰!如果你想要专业的学习Python开发技术,更多需要的是付出时间和精力,应该根据自己的实际需求去实地看一下,下面总结了50到面试试题参考,希望能给你带来帮助。1. 2017 校招真题这部分包含了 37 道 2017 年的校招真题。每个题目都配备相应的 Python 实现。例如我们来看一个有趣的例子:餐厅.py2. 剑指 offer这部分共包含了 68 道剑指真题。请看示例:变态青蛙跳.py3. 华为机试..._python面试bat
文章浏览阅读1k次。题目描述竞赛在排名时,一般是按做题数排名,但当做题数相同时,则按做各题所花总时间进行排名。下面编程实现时间的汇总。输入先输入一个n(1<=n<=10),表示总共做出了n题。然后输入n个做出各题所花的时间,格式为HH:MM:SS,其中,HH表示时(00<=HH<10),MM表示分(00<=MM<=59),SS表示秒(00<=SS<=59)。输出输出将..._竞赛在排名时,一般是按做题数排名,但当做题数相同时,则按做各题所花总时间进行排
文章浏览阅读1.7k次。Linux 启动时profile、bashrc、~/.bash_profile、~/.bashrc、~/.bash_profile执行顺序以及文件说明一、执行顺序登录linux时,/etc/profile、~/.bash_profile等几个文件的执行过程。如图所示:二、在登录Linux时要执行文件的过程如下:在刚登录Linux时,首先启动 /etc/profile 文件,然后再启动用户目录下的 ..._怎么运行profile文件