(1)MySQL进阶篇在linux环境下安装
1.概述
对于mysql二进制安装,优点是可以安装到任何路径下,灵活性好,一台服务器可以安装多个mysql。缺点是已经编译过,性能不如源码编译得好,不能灵活定制编译参数。如果用户即不想安装最简单却不够灵活的RPM包,又不想安装复杂费时的源码包,那么已编译好的二进制包将是最好的选择,下面让我们来介绍如何在linux系统下安装mysql服务端。
2.前期准备
2.1下载mysql二进制安装包
mysql官网:https://dev.mysql.com/downloads/mysql/
因为我下载的是mysql-8.0.23-linux-glibc2.12-x86_64.tar版本,如果有最新版本,则下载最新版本就好了。
2.2导入mysql二进制安装包
通过Xftp工具把安装包传输到linux系统package目录去:
3.mysql部署
●解压mysql安装包
--切换到安装目录
cd /app
--解压xz压缩文件
tar -xvf /app/package/mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz
●修改mysql文件夹名称
--把mysql-8.0.23-linux-glibc2.12-x86_64修改为mysql文件夹名称
mv /app/mysql-8.0.23-linux-glibc2.12-x86_64 /app/mysql
●创建data目录
--在mysql根目录下创建data目录,用于存放数据
mkdir /app/mysql/data
●创建mysql用户组和mysql用户
--创建mysql用户组和mysql用户
groupadd mysql
useradd -g mysql mysql
●修改mysql目录权限
--修改mysql目录权限
chown -R mysql.mysql /app/mysql/
●初始化数据库
--先切换到mysql安装目录
cd /app/mysql
--初始化数据库
bin/mysqld --initialize --user=mysql --basedir=/app/mysql --datadir=/app/mysql/data

●配置mysql
--先切换到mysql.support-files目录
cd /app/mysql/support-files
--在mysql/support-files创建文件my-default.cnf
touch my-default.cnf
--复制配置文件到/etc/my.cnf
cp -a ./my-default.cnf /etc/my.cnf
--编辑my.cnf
vim /etc/my.cnf
my.cnf输入如下配置内容:
[client]
port=3306
socket=/tmp/mysql.sock [mysqld]
port=3306
user=mysql
socket=/tmp/mysql.sock
basedir=/app/mysql
datadir=/app/mysql/data
●配置环境变量
--编辑profile文件
vim /etc/profile
--配置mysql环境变量
PATH=/data/mysql/bin:/data/mysql/lib:$PATH
export PATH
--使mysql环境变量生效
source /etc/profile
--看环境变量是否生效
echo $PATH
●启动mysql
cd /app/mysql/bin
systemctl start mysqld
or
service mysql start
启动mysql时候可能会遇到如下错误:
●Failed to start mysqld.service: Unit not found.
or
Starting MySQL.Logging to '/app/mysql/data/dengwu.err'.
... ERROR! The server quit without updating PID file (/app/mysql/data/dengwu.pid).
解决方法如下:
--需要安装mariadb-server
yum install -y mariadb-server
--然后启动mariadb服务
systemctl start mariadb.service
--需要的可以添加mariadb服务开机启动
systemctl enable mariadb.service
●Job for mariadb.service failed because the control process exited with error code. See "systemctl status mariadb.service" and "journalctl -xe" for details.
解决方法如下:
chown -R mysql.mysql /app/mysql/
●Starting MySQL... ERROR! The server quit without updating PID file (/app/mysql/data/dengwu.pid).
解决方法如下:
--查看mysql进程
ps -ef|grep mysqld
--杀死mysql进程
kill -9 mysql进程ID
然后重新启动下mysql:
4.修改mysql密码
root用户第一次登录mysql,因为初始密码我们并不知道,一般情况下我们都会重新设置一个新的密码,具体操作如下:
--编辑my.cnf
vim /etc/my.cnf
输入如下命令行:
default_authentication_plugin=mysql_native_password
如果忘记了密码再加上:
--跳过密码验证(等设置了密码就去掉)
skip-grant-tables
然后登录mysql:
--登录mysql
mysql -u root -p
然后输入命令查看mysql用户组:
--查看mysql用户表
select user,host,authentication_string from mysql.user;

看看root用户没有开启远程连接权限,如果没有则执行如下命令:
--修改root用户可以远程连接
update mysql.user set host='%' where user='root';
开启远程连接权限后,再来修改root用户密码:
--如果host是localhost则@字符后面是localhost,反之则是%,以host结果为准
--修改加密规则
alter user 'root'@'%' identified by 'qwer1234' password expire never;
--更新一下用户的密码
alter user 'root'@'%' identified with mysql_native_password by 'qwer1234';
--刷新权限
flush privileges;
--修改root用户密码
alter user 'root'@'%' identified by 'qwer1234';

--重新启动mysql
service mysql restart;
5.配置mysql阿里云安全组策略
登录阿里云->安全组规则->访问规则->入方向->手动添加如下策略:
使用Navicat连接成功:
参考文献:
linux下安装mysql8.0.x步骤
(1)MySQL进阶篇在linux环境下安装的更多相关文章
- linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg)
linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg) 2013-11-10 16:51:14 分类: 系统运维 为什么要写这篇文章? 答:通过常规的三大步(./confi ...
- Linux环境下安装Tigase XMPP Server
Tigase是一种XMPP服务器,可以作为采用XMPP协议的各种IM(Instant Messeging)工具(如Pandion.Spark等)的服务器. 在Linux环境下安装Tigase的步骤如下 ...
- ElasticHD Linux环境下安装
ElasticHD Linux环境下安装教程 ElasticHD windows环境下安装教程 上一篇讲了ElasticHD windows环境下安装,这一篇继续说明ElasticH ...
- Linux环境下安装MySQL5.7
记录一下Linux环境下安装MySQL,大家按顺序执行即可,5分钟内即可完成安装,亲测可行.不过下载MySQL安装包需要大家花费一些功夫,送个链接给大家,大家按需下载: https://dev.mys ...
- Linux环境下安装NodeJS和mongoDB
前面的话 本文将详细介绍如何下Linux环境下安装NodeJS和mongoDB NodeJS [1]使用二进制包安装 1.在官网下载Linux环境下的NodeJS安装包 2.通过xftp软件将安装包上 ...
- 在linux环境下安装redis并且搭建自己的redis集群
此文档主要介绍在linux环境下安装redis并且搭建自己的redis集群 搭建环境: ubuntun 16.04 + redis-3.0.6 本文章分为三个部分:redis安装.搭建redis集群 ...
- [Linux]pycharm在Linux环境下安装
之前转载了一个在Windows环境下pycharm专业破解的安装的文章,今天为了在Linux环境下安装使用odoo10,所以尝试在Linux环境下安装pycharm专业破解版看看. windows下安 ...
- Linux 环境下安装python相关
目录 Linux 环境下安装python相关 linux软件包管理工具之yum工具(如同pip3工具) yum源理解 下载阿里云的.repo仓库文件 ,放到/etc/yum.repos.d/ yum安 ...
- JavaWeb入门——在Linux环境下安装Tomcat服务器
JavaWeb入门——在Linux环境下安装Tomcat服务器 摘要:本文主要学习了如何在Linux环境下安装Tomcat服务器. 准备工作 检查Java环境变量 检查系统是否配置了Java的环境变量 ...
随机推荐
- DOS windows 使用bat脚本获取 IP MAC 系统信息
@echo select disk 0 >dpjs.txt @echo detail disk >>dpjs.txt diskpart /s dpjs.txt@echo ------ ...
- Effective Java读书笔记--类和接口
1.使类和成员的可访问性最小化不指定访问级别,就是包私有.protected = 包私有 + 子类一般private不会被访问到,如果实现了Serializable,可能会泄露.反射.final集合或 ...
- 设计模式(一)——Java单例模式(代码+源码分析)
1)单例模式保证了 系统内存中该类只存在一个对象,节省了系统资源,对于一些需要频繁创建销毁的对象,使用单例模式可以提高系统性能 2)当想实例化一个单例类的时候,必须要记住使用相应的获取对象的方法,而不 ...
- P3195 [HNOI2008] 玩具装箱(斜率优化DP)
题目链接 设\(d[i]\)为将前 \(i\) 个玩具装入箱中所需得最小费用 容易得到动态转移方程: \[d[i] = min(d[j] + (s[i]-s[j]+i-j-1-L)^2), (j< ...
- Codeforces Round #655 (Div. 2) A. Omkar and Completion
题目链接:https://codeforces.com/contest/1372/problem/A 题意 构造一个大小为 $n$ 的数组 $a$,要求满足 $1 \le a_i \le n$,且不存 ...
- Codeforces Round #625 (Div. 2, based on Technocup 2020 Final Round) D. Navigation System(有向图,BFS,最短路)
题意: n 点 m 边有向图,给出行走路径,求行走途中到路径终点最短路变化次数的最小值和最大值 . 思路 : 逆向广搜,正向模拟. #include <bits/stdc++.h> usi ...
- POJ 2195 & HDU 1533 Going Home(最小费用最大流)
这就是一道最小费用最大流问题 最大流就体现到每一个'm'都能找到一个'H',但是要在这个基础上面加一个费用,按照题意费用就是(横坐标之差的绝对值加上纵坐标之差的绝对值) 然后最小费用最大流模板就是再用 ...
- js中for循环遍历的写法
众所周知,for循环是编程中必不可少的知识点:那么如何高效的写出循环呢? 我们要先知道for循环的基础样式是由自有变量自增自减和if判组成的: 1 for(条件){ 2 执行语句 3 } 而for循环 ...
- spring再学习之AOP事务
spring中的事务 spring怎么操作事务的: 事务的转播行为: 事务代码转账操作如下: 接口: public interface AccountDao { //加钱 void addMoney( ...
- .NET Core项目自动化测试和代码覆盖率审查
这篇文章给大家分享一下,如何配置.NET Core项目自动化测试和代码覆盖率审查. 基本知识,请参考这里: https://docs.microsoft.com/en-us/dotnet/core/t ...