安装前准备

1、检查是否已经安装过mysql

执行命令

  1. [root@localhost /]# rpm -qa | grep mysql 

从执行结果,可以看出我们已经安装了mysql-libs-5.1.73-5.el6_6.x86_64,执行删除命令

  1. [root@localhost /]# rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64

再次执行查询命令,查看是否删除

  1. [root@localhost /]# rpm -qa | grep mysql 

2、查询所有Mysql对应的文件夹

  1. [root@localhost /]# whereis mysql
  2. mysql: /usr/bin/mysql /usr/include/mysql
  3. [root@localhost lib]# find / -name mysql
  4. /data/mysql
  5. /data/mysql/mysql

删除相关目录或文件

  1. [root@localhost /]# rm -rf /usr/bin/mysql /usr/include/mysql /data/mysql /data/mysql/mysql

验证是否删除完毕

  1. [root@localhost /]# whereis mysql
  2. mysql:
  3. [root@localhost /]# find / -name mysql
  4. [root@localhost /]#

3、检查mysql用户组和用户是否存在,如果没有,则创建

  1. [root@localhost /]# cat /etc/group | grep mysql
  2. [root@localhost /]# cat /etc/passwd |grep mysql
  3. [root@localhost /]# groupadd mysql
  4. [root@localhost /]# useradd -r -g mysql mysql
  5. [root@localhost /]#

4、从官网下载是用于Linux的Mysql安装包

下载命令:

  1. [root@localhost /]# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

也可以直接到mysql官网选择其他版本进行下载。

安装Mysql

1、在执行wget命令的目录下或你的上传目录下找到Mysql安装包:mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
执行解压命令:

  1. [root@localhost /]# tar xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
  2. [root@localhost /]# ls
  3. mysql-5.7.24-linux-glibc2.12-x86_64
  4. mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

解压完成后,可以看到当前目录下多了一个解压文件,移动该文件到/usr/local/mysql
执行移动命令:

  1. [root@localhost /]# mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql

2、在/usr/local/mysql目录下创建data目录

  1. [root@localhost /]# mkdir /usr/local/mysql/data

3、更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限

  1. [root@localhost /]# chown -R mysql:mysql /usr/local/mysql
  2. [root@localhost /]# chmod -R 755 /usr/local/mysql

4、编译安装并初始化mysql,务必记住初始化输出日志末尾的密码(数据库管理员临时密码)

  1. [root@localhost /]# cd /usr/local/mysql/bin
  2. [root@localhost bin]# ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

此时可能会出现错误:

出现该问题首先检查该链接库文件有没有安装使用 命令进行核查

  1. [root@localhost bin]# rpm -qa|grep libaio
  2. [root@localhost bin]#

运行命令后发现系统中无该链接库文件

  1. [root@localhost bin]# yum install libaio-devel.x86_64

安装成功后,继续运行数据库的初始化命令,此时可能会出现如下错误:

执行如下命令后,再次运行数据库的初始化命令:

  1. [root@localhost bin]# yum -y install numactl

5、运行初始化命令成功后,输出日志如下:

记录日志最末尾位置root@localhost:后的字符串,此字符串为mysql管理员临时登录密码。

6、编辑配置文件my.cnf,添加配置如下

  1. [root@localhost bin]# vi /etc/my.cnf
  2.  
  3. [mysqld]
  4. datadir=/usr/local/mysql/data
  5. port = 3306
  6. sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
  7. symbolic-links=0
  8. max_connections=400
  9. innodb_file_per_table=1
  10. #表名大小写不明感,敏感为
  11. lower_case_table_names=1

7、启动mysql服务器

  1. [root@localhost /]# /usr/local/mysql/support-files/mysql.server start

显示如下结果,说明数据库安装成功

如果出现如下提示信息

  1. Starting MySQL... ERROR! The server quit without updating PID file

查看是否存在mysql和mysqld的服务,如果存在,则结束进程,再重新执行启动命令

  1. #查询服务
  2. ps -ef|grep mysql
  3. ps -ef|grep mysqld
  4.  
  5. #结束进程
  6. kill -9 PID
  7.  
  8. #启动服务
  9. /usr/local/mysql/support-files/mysql.server start 

8、添加软连接,并重启mysql服务

  1. [root@localhost /]# ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
  2. [root@localhost /]# ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
  3. [root@localhost /]# service mysql restart

9、登录mysql,修改密码(密码为步骤5生成的临时密码)

  1. [root@localhost /]# mysql -u root -p
  2. Enter password:
  3. mysql>set password for root@localhost = password('yourpass');

10、设置开机自动启动

  1. 1、将服务文件拷贝到init.d下,并重命名为mysql
  2. [root@localhost /]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
  3. 2、赋予可执行权限
  4. [root@localhost /]# chmod +x /etc/init.d/mysqld
  5. 3、添加服务
  6. [root@localhost /]# chkconfig --add mysqld
  7. 4、显示服务列表
  8. [root@localhost /]# chkconfig --list

远程连接Mysql

1、开放防火墙端口
首先在Linux中查看mysql端口:
  1. netstat -ntpl

查看防火墙状态:

  1. iptables -vnL

如果mysql端口是drop状态,或者根本无mysql对应的端口,说明端口设置有问题。

开放防火墙端口或添加需要监听的端口

  1. /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

开启3306端口监听,开启后如下图

扩展知识,防火墙其他相关操作

  • 临时关闭防火墙服务:service iptables stop
  • 开启防火墙服务:service iptables start
  • 开机不再启动防火墙服务:chkconfig iptables off

2、授权MySQL远程登陆

连接到mysql服务器,执行下面的命令:

  1. mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;

操作完后刷新权限 :

  1. flush privileges;

3、最后通过navicat远程链接MySQL,链接测试,如下图:

Linux学习—mysql安装配置及远程连接的更多相关文章

  1. Linux学习—redis安装配置及远程连接

    1.下载安装包并解压 进入文件夹/usr/local cd /usr/local 下载redis安装包: wget http://download.redis.io/releases/redis-.t ...

  2. Linux 数据库MySql 安装配置教程!

    本文价绍Linux 相关mysql 安装和配置以及基本连接测试 1官网下载安装mysql-server # wget http://dev.mysql.com/get/mysql-community- ...

  3. linux 学习 mysql安装到连接

    在Centos7.6 上安装mysql ps:一般mysql安装后会在/var/log/下面生成一个mysqld.log文件,如果遇到启动不了或者其他问题,基本都可以在这个log文件里面找到错误原因 ...

  4. Linux下MySQL 安装配置

    MySQL 是最流行的关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言. MySQL由于其体积小.速度快 ...

  5. Linux防火墙iptables安装配置--使用远程工具Xmanager和ftp服务安装配置

    一.linux关闭防火墙:    a.用户直接在终端输入:service iptables stop     查看防火墙状况:service iptables status  b.root用户在终端输 ...

  6. linux学习笔记-安装配置使用clamav杀毒软件

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 1.安装clamav 2.更新病毒库 # freshclam 如果更新不了,或者更新特别慢,可以手动下载病毒库文件,放到/var ...

  7. LINUX学习-Mysql安装

    一.安装环境 操作系统CentOS6.8 关闭SeLinux和iptables防火墙 二.网络yum源 将下面的软件下载到  /etc/yum.repos.d/   的目录下 官方基础:http:// ...

  8. Linux普通用户安装配置mysql(非root权限)

    Linux普通用户安装配置mysql(非root权限) 说明:在实际工作中,公司内网的机器我们一般没有root权限,也没有连网,最近参考网上的资料使用一般的账户成功安装mysql,记录如下 Linux ...

  9. Linux下MySQL安装及配置

    Linux下MySQL安装及配置 安装MySQL Ubuntu系统中,直接使用apt install的方式去安装MySQL的服务端和客户端,MySQL的客户端必须安装,否则无法通过命令连接并操作MyS ...

随机推荐

  1. java -为什么重写equals(),还需要重写hashCode()?

    1.先post这两个方法的基本定义: equals()的定义: 浅谈Java中的equals和==(转) hashCode()的定义: java中hashCode()方法的作用 Java中hashCo ...

  2. Java&Selenium 鼠标键盘及滚动条控制相关方法封装

    一.摘要 本片博文主要展示在使用Selenium with java做web自动化时,一些不得不模拟鼠标操作.模拟键盘操作和控制滚动条的java代码 二.模拟鼠标操作 package util; im ...

  3. 2.Locust 跑起来试试

    代码 from locust import HttpLocust, TaskSet, task class UserBehavior(TaskSet): @task def baidu(self): ...

  4. H5项目 使用Cropper.js 实现图片 裁剪 操作 (APP端)

    参考地址: 1.https://www.jianshu.com/p/b252a7cbcf0b 2.https://blog.csdn.net/weixin_38023551/article/detai ...

  5. ACM-ICPC 2017 沈阳赛区现场赛 G. Infinite Fraction Path && HDU 6223(BFS)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6223 参考题解:https://blog.csdn.net/qq_40482495/article/d ...

  6. Go学习笔记(六) | 使用swaggo自动生成Restful API文档(转)

    关于Swaggo 或许你使用过Swagger, 而 swaggo就是代替了你手动编写yaml的部分.只要通过一个命令就可以将注释转换成文档,这让我们可以更加专注于代码. 目前swaggo主要实现了sw ...

  7. Finding Lane Lines on the Road

    Finding Lane Lines on the Road The goals / steps of this project are the following: Make a pipeline ...

  8. TabSheet源码

    TabSheet.h #if !defined(AFX_TABSHEET_H__42EE262D_D15F_46D5_8F26_28FD049E99F4__INCLUDED_) #define AFX ...

  9. 自动上传本地图片和word图片(word图片需使用从word粘贴功能)

    在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...

  10. CentOS7从一般用户切换到root用户

    可以使用如下命令从普通用户切换到root用户: su root 键入回车后,系统提示输入密码(此密码即你平时使用的那个用户的密码.关于这一点我还没有确定是否所有用户都可以切换到root用户身份).验证 ...