Linux,Mac下MySQL的安装及一些知识点的整理
Linux下载安装
在服务器上下载的话,需要安装Mysql5.7相关的yum源
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
安装刚下载的rpm包
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
确保yum源中生效的是我们刚刚添加进来的5.7版本
yum repolist all | grep
结果如下图, 很显然,我默认生效的依赖是mysql8.0 , 所以需要修改配置

命令:
vim /etc/yum.repos.d/mysql-community.repo
修改成这样:

ok, 开始安装
yum -y install mysql-community-server
启动服务:
# centos6
service mysql stop/start
# centos6 7
systemctl stop/start/restart mysqld.service
其他零散的知识点
在华为云上按上面的安装步骤,可以通过 whereis my 查看到配置文件的位置
[root@139 ~]# whereis my
my: /etc/my.cnf
这个my.cnf中有mysql进程相关的配置,比如刚才安装的mysql的my.cnf就长下面这样。
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
有时候我们想配置让mysql支持无密登陆。
或者像上面那样我们刚安装了一台mysql,也不知道root的密码是多少,可以像下面这样,在my.cnf中的 [mysqld] 模块中添加 skip-grant-tables 参数实现无密登陆
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
skip-grant-tables
还是上面的情况,假设机器依然是centos7,我们安装完mysql后偏偏想用root账户密码登陆mysql,那root的默认密码在哪里查看呢?
grep 'temporary password' /var/log/mysqld.log
这个密码很难记,然后我们可以像下面这样修改密码
alter user 'root'@'localhost' identified by ‘newPassword’;
如果我们设置的newPassword太简单了,它会像下面这样提示我们密码不够强大
Your password does not satisfy the current policy requirements
于是我们就得使用下面的命令修改规则
set global validate_password_policy=LOW;
重启,重复上面的操作。
于是你就能本机轻松使用root登陆了
如果mysql不是在你的本机,而是在远程服务器,你会发现有时明明账号密码都正确,但是你就是不能远程登陆上去。很可能是因为我们使用的这个账号就不允许远程登陆。
mysql的用户信息存放在 mysql/user表下;如下图,查看这个表中的部分内容。
下图中的host如果为localhsot,说名root账户仅能在本地登陆。
我的已经改成 % ,支持本地登陆和远程登陆。

通过命令修改:
# 1. 连接数据库
mysql> use mysql;
mysql> update user set host = '%' where user = 'root';
DataGrip想连接mysql, 需要下载相应的驱动, 如下图:


Mac下安装
如果你的电脑mac,可以参考这个大佬的笔记安装mysql:点击查看详情
上面的大佬中的笔记有如需要说一下的地方:

知道这一点,下次再安装完mysql后,然后直接打开控制台输入mysql -V却发现,咦?怎么说不认识这个命令? 难道是我没安装成功吗?(纯洁的微笑)
当然你按照上面大佬博文中的教程将mysql安装到mac上后。然后使用如下命令启动mysql:
sudo mysql.server start
如何关闭mysql?
简单粗暴的通过
ps aux | grep mysql找到mysql的进程id,然后kill -9 pid强杀也可以通过上面的脚本
sudo mysql.server stop终止mysql
然而root的密码你还是不知道。貌似你还是登陆不上去啊?
那你可以这样做:在上面配置的support-file文件中添加启动参数skip-grant-tables

然后你就能免密登陆了(免密登陆,它让你输入密码,你直接敲回车就能进去,然后你要做的第一件事就是去改密码)
刷新一下权限表:新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。
flush privileges
执行命令修改root密码:
alter user 'root'@'localhost' identified by 'root';
查询my.cnf中定义的端口:
>select @@port;
+--------+
| @@port |
+--------+
| 3306 |
+--------+
再说一个小技巧:可以帮助我们快速查看到mysql都使用了哪些配置文件。
ps aux | grep mysql
如下:(当然这是在mysql已经启动的情况下)
MacBook-Pro:~ root# ps aux | grep mysql
root 39669 0.0 0.0 4285448 808 s005 S+ 7:32PM 0:00.00 grep mysql
_mysql 39097 0.0 0.6 4689984 47620 s005 S 7:16PM 0:00.58 /usr/local/mysql/bin/mysqld
--basedir=/usr/local/mysql
--datadir=/usr/local/mysql/data
--plugin-dir=/usr/local/mysql/lib/plugin
--user=mysql
--skip-grant-tables
--log-error=MacBook-Pro.local.err
--pid-file=/usr/local/mysql/data/mysqld.local.pid
root 38998 0.0 0.0 4288076 936 s005 S 7:16PM 0:00.03 /bin/sh /usr/local/mysql/bin/mysqld_safe
--skip-grant-tables
--datadir=/usr/local/mysql/data
--pid-file=/usr/local/mysql/data/mysqld.local.pid
Linux,Mac下MySQL的安装及一些知识点的整理的更多相关文章
- Linux(Ubuntu)下MySQL的安装与配置
转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...
- Linux(centos)下mysql编译安装教程
Linux下mysql编译安装教程 #查看linux发行版本 cat /etc/issue #查看linux内核版本号 uname -r 本文測试环境centOS6.6 一.Linux下编译安装MyS ...
- mac下mysql的安装
由于最近需要布置mantis用来进行bug追踪,在此记录其过程. 由于PHP apache环境在Mac OS上是自带的,所以不需要另处下安装包,只需要简单配置一下即可. 首先打开终端输入命令: sud ...
- Linux(Centos7)下Mysql的安装
1.1 查看mysql的安装路径: [root@bogon ~]# whereis mysql mysql: /usr/bin/mysql /usr/lib/mysql /usr/share/mysq ...
- Linux CentOS下MySQL的安装配置之浅谈
前期必备安装:VMware虚拟机,CentOS镜像[注意:Linux下使用CentOS MySQL是不用在官网下载的,只需要配置就OK了] 下面开始正式操作: //CentOS安装MySQL之浅谈 ...
- Linux(DeepInOS) 下 mysql 的安装与基本配置
索引: 目录索引 参看代码 GitHub: DeepIn(GNU/Linux) MySQL 一.安装 sudo apt-get install mysql-server 期间需要输入两次密码,root ...
- linux(raspbian)下mysql的安装,权限设置和用户管理
一 MySQL安装:(1) 使用apt-get安装, 由于raspbian是基于Debian的自由操作系统,debian默认自带apt-get指令安装应用因此可以使用来安装 sudo apt-get ...
- Mac下MySQL的安装与配置
之前一直用的是阿里云的服务器,在服务器上装了一个MySQL,但是今天发现到期了,而且续费时发现之前的大学生优惠不能用了,可是明明到6月份,大学生才毕业啊,shit!!!所以没办法只能在自己电脑上装一个 ...
- Linux(Ubuntu)下MySQL的安装
1)首先检查系统中是否已经安装了MySQL 在终端里面输入 sudo netstat -tap | grep mysql 若没有反映,没有显示已安装结果,则没有安装.若如下显示,则表示已经安装 2)如 ...
随机推荐
- jacoco 生成单测覆盖率报告
一.jacoco 简介 jacoco 是一个开源的覆盖率工具,它针对的开发语言是 java.其使用方法很灵活,可以嵌入到 ant.maven 中:可以作为 Eclipse 插件:可以作为 javaAg ...
- 教你配置windows上的windbg,linux上的lldb,打入clr内部这一篇就够了
一:背景 1. 讲故事 前几天公众号里有位兄弟看了几篇文章之后,也准备用windbg试试看,结果这一配就花了好几天,(づ╥﹏╥)づ,我想也有很多跃跃欲试的朋友在配置的时候肯定会遇到这样和那样的问题,所 ...
- 记一次sqoop安装后测试的问题
运行命令: sqoop import --connect "jdbc:mysql://x.x.x.x:3306/intelligent_qa_bms?useUnicode=true& ...
- hadoop中如何动态更新集群队列和容量
1.集群默认是FIFO容量调度器,有的时候不同的业务部门都需要使用hadoop集群,那么这时候就需要来设置容量调度器了,如何平衡各个部门的容量.合理利用资源? 首先配置调度器需要在修改两个配置文件,分 ...
- LeetCode--Array--Remove Element && Search Insert Position(Easy)
27. Remove Element (Easy)# 2019.7.7 Given an array nums and a value val, remove all instances of tha ...
- NEON中的L可以避免溢出
在做加法时,比如两个255x255的数值相加,那么正确结果将是130050,对一个最大值为65565的unsigned short是会溢出的,但是如果使用L命令时,则不会产生溢出.这说明L命令,不是先 ...
- 【HBase】快速搞定HBase与Hive的对比、整合
目录 对比 整合 需求一 步骤 一.将HBase的五个jar包拷贝到Hive的lib目录下 二.修改hive的配置文件 三.在Hive中建表 四.创建hive管理表与HBase映射 五.在HBase中 ...
- Linux设备模型之kobject
阿辉原创,转载请注明出处 参考文档:LDD3-ch14.内核文档Documentation/kobject.txt,本文中使用到的代码均摘自Linux-3.4.75 ----------------- ...
- python解析excel中图片+提取图片
解析表格是常用的技术.但是有些表各里面有图片怎么办?我想获得表格里面的图片,值得注意的是,图片没有位置信息,所以最好给图片进行编号,编号代表位置. 下面附上提取表格里面图片的代码.只要输出表格地址,和 ...
- mybatis 自定义缓存 cache
缓存不管哪个框架都是显得特别的重要,今天自己测试实现了mybatis自定义缓存,从而理解mybatis缓存的工作原理. 首先缓存类要实现Cache接口:具体实现如下package com.ibatis ...