Linux下Mysql安装与常见问题解决方案
1.Mysql安装
环境:

Mysql版本:

开始安装:
首先检查环境有没有老版本mysql,有的话先卸载干净,具体百度。
接着先获取mysql的安装包:wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
如果FTP查看就是这个

然后安装一下:yum localinstall -y mysql57-community-release-el7-11.noarch.rpm
最后装一下服务:yum install -y mysql-community-server
装好后,先开启服务:systemctl start mysqld.service
1.1问题:如果新装好的mysql开启服务后遇到下面情况

查看mysql相关进程:
接着kill掉。再开启一下,出现下面情况就代表没问题了:

注意active(running)那行是绿色的。
如果查看mysql的status时出现这种情况:

说明失败了,出现了问题。
你先重启一下mysql:systemctl restart mysqld.service
接着如果会出现这种情况:

则可能是配置文件有问题。下面会讲到配置文件如何更改。(新装的mysql配置文件一般没问题,出现问题可能是已经有mysql进程导致。)
2.进入Mysql
装好后mysql会给你一个默认随机密码,这时候你需要先更改root密码和权限,方便以后连接mysql做数据操作。
这里介绍两种修改密码方法:
第一种:在配置文件添加skip-grant-tables。这是直接绕过登录,弊端是这种方法建议做临时,长期不适用,考虑到后期要将数据库对外。
我们先输入:vim /etc/my.cnf 编辑装完mysql的配置文件。然后更改,(按i):
打开差不多是这样,我们将skip-grant-tables 添加到光标处,也就是顶部[mysqld]的底下,注意是mysqld,上面还有一个msql。
完了按esc,输入 冒号+wq保存退出::wq
接着我们重启一下mysql,再直接输入mysql就可以直接登录了。
我们下一步要更改mysql的密码,首先看一下数据库:show databases;
可以看到有一个mysql数据库,这是装完就存在的。我们使用这个数据库:use mysql;
这个数据库里面有一个user表,表里存放了登录相关的字段,我们只要update一下就可以了:
mysql> update user set password=password('123') where user='root' and host='localhost';
mysql> flush privileges;一般是没有什么问题,如果出现
这种情况,表示你user表里面没有password字段。(我当时就是这种情况)不要急,我们看一下user里面有哪些字段:desc use;
你一个个字段看完,发现确实没有password字段。
但是你往下看,找到一个这个字段
这个字段里存放的是mysql默认的加密过的密码
我们select一下看看:
知道字段就好办了,直接update成你自己的密码即可。(改完密码记得把配置文件里的skip那段删掉,再重启mysql)
第二种是查看日志,他会告诉你默认的mysql密码,每台机器是不一样的,我们看一下:grep 'temporary password' /var/log/mysqld.log
知道默认密码了,我们就能登录再修改成自己的密码了(密码在最后的root@localhost:这里。你也可以用他给的随机密码. :D)。
3.连接Mysql
第一次用Navicat for Mysql可能出现 1130 host is not allowed to connect to…. 这个错误
原因是你的帐号不允许从远程登录,只能在localhost。你只要更改一下表的数据即可
登录mysql后,使用mysql数据库,接着输入
mysql>update user set host = '%' where user = 'root';
mysql> flush privileges;
不放心再看一下
mysql>select host, user from user;
你看到root用户的host字段变成%就可以了。
4.在mysql中插入中文时出现??或者乱码;在myeclipse中连接mysql后插入中文数据出现乱码的情况
出现这种情况首先确保你的开发环境全部是UTF-8(跟mysql要一致)包括IDE和Navicat for mysql的编码。
接着更改mysql的配置文件:
第一步先看一下数据库编码,输入:show variables like '%char%';
我这里的修改过了,默认的value有其他的编码,先更他们的编码:
SET character_set_client = utf8;
SET character_set_connection = utf8;
SET character_set_database = utf8;
SET character_set_results = utf8;
SET character_set_server = utf8; .
….
改好后,有可能出现重启mysql编码会还原的情况,这时候你需要更改my.cnf配置文件(一般装完默认路径是/etc/my.cnf)。
先exit退出mysql后输入:vim /etc/my.cnf 按i 进入编辑模式
将上述两行代码添加进去。这里要注意一下,光标处的那一行最好放在[mysql] 底下,最下面的放在[mysqld]下面。我刚开始放错位置导致了重启mysql时出现的一个问题:
有可能会出现这个 Job for mysqld.service failed的情况。
改好后重启一下mysql,基本就好了。
5.结语
上述的这些问题自己在折腾的时候都出现过,有的很头疼,弄一下午的情况也有。后来经过搜索,高人的指点,终于把所有问题都解决了。写了这篇来汇总我安装时出现的问题,希望对刚接触linux部署mysql的新人有所帮助吧。
Linux下Mysql安装与常见问题解决方案的更多相关文章
- linux下MySQL安装登录及操作
linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-cl ...
- Linux下MySQL安装和配置
--Linux下MySQL安装和配置 ---------------------------2014/05/18 Linux下MySQL的配置和安装 本文的安装采用 rpm 包安装 1.首先在官网下载 ...
- Linux下Mysql安装(RPM安装)
1. 首先检查机器里是否已经存在MySQL $ rpm -qa | grep mysql 2. 去官网下载相应的rpm包:https://dev.mysql.com/downloads/mysql/ ...
- Linux下MySQL安装及配置
Linux下MySQL安装及配置 安装MySQL Ubuntu系统中,直接使用apt install的方式去安装MySQL的服务端和客户端,MySQL的客户端必须安装,否则无法通过命令连接并操作MyS ...
- linux 下 mysql安装和配置
最近在学习R语言,看到R与数据库交互这一部分,就自己动手实践了一下,数据库选择的是mysql,主要记录下linux下怎么安装mysql. 网上的很多资料都有相关的文章,这里只是记录下自己安装过程中遇到 ...
- Linux下mysql安装过程
到mysql官网下载mysql编译好的二进制安装包,在下载页面Select Platform:选项选择linux-generic,然后把页面拉到底部,64位系统下载Linux - Generic (g ...
- Linux下Mysql安装教程详解
Linux下软件安装一般有三种方式:RPM包方式(通过Redhat 第三方包管理系统).二进制包和源码包.本篇主要介绍二进制包安装mysql数据库的方式. 如何获取二进制源码包 当然是到mysql官网 ...
- Linux下mysql安装记录
1.MySQL下载路径:https://dev.mysql.com/downloads/ Linux下的安装步骤:http://www.runoob.com/linux/mysql-install-s ...
- Linux环境下MySql安装和常见问题的解决
MySql安装 首先当然是要连接上linux服务器咯,然后就是下面的命令甩过去,梭哈,一通运行就是啦 梭哈 下载: sudo wget http://dev.mysql.com/get/mysql ...
随机推荐
- Delphi Base64编码/解码
Uses CnBase64: CnBase64.Base64Encode(Edit1.Text, Psw64);
- BZOJ 2741: 【FOTILE模拟赛】L(可持久化Trie+分块)
传送门 解题思路 首先求出前缀异或和,那么问题就转化成了区间内选两个数使得其异或和最大.数据范围不是很大考虑分块,设\(f[x][i]\)表示第\(x\)块开头到\(i\)这个位置与\(a[i]\)异 ...
- LOJ 2978 「THUSCH 2017」杜老师——bitset+线性基+结论
题目:https://loj.ac/problem/2978 题解:https://www.cnblogs.com/Paul-Guderian/p/10248782.html 第 i 个数的 bits ...
- XX-net https://github.com/XX-net/XX-Net
XX-net https://github.com/XX-net/XX-Net
- bzoj 1233: [Usaco2009Open]干草堆tower 【想法题】
首先这题的$n^3$的DP是比较好想的 $f[i][j]$表示用前$i$包干草 且最顶层为第$j+1$包到第$i$包 所能达到的最大高度 然而数据范围还是太大了 因此我们需要去想一想有没有什么单调性 ...
- UPLOADIFY用法
把下面代码 this.settings.upload_url = SWFUpload.completeURL(this.settings.upload_url); this.settings.but ...
- ceph-cluster map
知道cluster topology,是因为这5种cluster map. ====================================== 知道cluster topology,是因为这 ...
- vue学习 ---- 使用vue-router 进行跳转
前提说明,在学习vue的时候,尽量的以官网的为主,而且框架本身与官方文档都是在不断迭代更新的. 在vue的框架中,目前都是使用vue-router 来进行页面跳转的,而不是<a>.先贴一个 ...
- go 语言结构控制
if else 结构: #第一种 if condition { // do something } #第二种 if condition { // do something } else { // d ...
- 牛客网练习赛 2 烟花(概率dp)
题目传送门 烟花 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K Special Judge, 64bit IO Format: %lld 题目 ...











