Linux学习—mysql安装配置及远程连接
安装前准备
1、检查是否已经安装过mysql
执行命令
- [root@localhost /]# rpm -qa | grep mysql

从执行结果,可以看出我们已经安装了mysql-libs-5.1.73-5.el6_6.x86_64,执行删除命令
- [root@localhost /]# rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64
再次执行查询命令,查看是否删除
- [root@localhost /]# rpm -qa | grep mysql

2、查询所有Mysql对应的文件夹
- [root@localhost /]# whereis mysql
- mysql: /usr/bin/mysql /usr/include/mysql
- [root@localhost lib]# find / -name mysql
- /data/mysql
- /data/mysql/mysql
删除相关目录或文件
- [root@localhost /]# rm -rf /usr/bin/mysql /usr/include/mysql /data/mysql /data/mysql/mysql
验证是否删除完毕
- [root@localhost /]# whereis mysql
- mysql:
- [root@localhost /]# find / -name mysql
- [root@localhost /]#
3、检查mysql用户组和用户是否存在,如果没有,则创建
- [root@localhost /]# cat /etc/group | grep mysql
- [root@localhost /]# cat /etc/passwd |grep mysql
- [root@localhost /]# groupadd mysql
- [root@localhost /]# useradd -r -g mysql mysql
- [root@localhost /]#
4、从官网下载是用于Linux的Mysql安装包
下载命令:
- [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
执行解压命令:
- [root@localhost /]# tar xzvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
- [root@localhost /]# ls
- mysql-5.7.24-linux-glibc2.12-x86_64
- mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
解压完成后,可以看到当前目录下多了一个解压文件,移动该文件到/usr/local/mysql
执行移动命令:
- [root@localhost /]# mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql
2、在/usr/local/mysql目录下创建data目录
- [root@localhost /]# mkdir /usr/local/mysql/data
3、更改mysql目录下所有的目录及文件夹所属的用户组和用户,以及权限
- [root@localhost /]# chown -R mysql:mysql /usr/local/mysql
- [root@localhost /]# chmod -R 755 /usr/local/mysql
4、编译安装并初始化mysql,务必记住初始化输出日志末尾的密码(数据库管理员临时密码)
- [root@localhost /]# cd /usr/local/mysql/bin
- [root@localhost bin]# ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
此时可能会出现错误:

出现该问题首先检查该链接库文件有没有安装使用 命令进行核查
- [root@localhost bin]# rpm -qa|grep libaio
- [root@localhost bin]#
运行命令后发现系统中无该链接库文件
- [root@localhost bin]# yum install libaio-devel.x86_64
安装成功后,继续运行数据库的初始化命令,此时可能会出现如下错误:

执行如下命令后,再次运行数据库的初始化命令:
- [root@localhost bin]# yum -y install numactl
5、运行初始化命令成功后,输出日志如下:

记录日志最末尾位置root@localhost:后的字符串,此字符串为mysql管理员临时登录密码。
6、编辑配置文件my.cnf,添加配置如下
- [root@localhost bin]# vi /etc/my.cnf
- [mysqld]
- datadir=/usr/local/mysql/data
- port = 3306
- sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
- symbolic-links=0
- max_connections=400
- innodb_file_per_table=1
- #表名大小写不明感,敏感为
- lower_case_table_names=1
7、启动mysql服务器
- [root@localhost /]# /usr/local/mysql/support-files/mysql.server start
显示如下结果,说明数据库安装成功

如果出现如下提示信息
- Starting MySQL... ERROR! The server quit without updating PID file
查看是否存在mysql和mysqld的服务,如果存在,则结束进程,再重新执行启动命令
- #查询服务
- ps -ef|grep mysql
- ps -ef|grep mysqld
- #结束进程
- kill -9 PID
- #启动服务
- /usr/local/mysql/support-files/mysql.server start

8、添加软连接,并重启mysql服务
- [root@localhost /]# ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
- [root@localhost /]# ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
- [root@localhost /]# service mysql restart
9、登录mysql,修改密码(密码为步骤5生成的临时密码)
- [root@localhost /]# mysql -u root -p
- Enter password:
- mysql>set password for root@localhost = password('yourpass');

10、设置开机自动启动
- 1、将服务文件拷贝到init.d下,并重命名为mysql
- [root@localhost /]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
- 2、赋予可执行权限
- [root@localhost /]# chmod +x /etc/init.d/mysqld
- 3、添加服务
- [root@localhost /]# chkconfig --add mysqld
- 4、显示服务列表
- [root@localhost /]# chkconfig --list
远程连接Mysql
- netstat -ntpl
查看防火墙状态:
- iptables -vnL
如果mysql端口是drop状态,或者根本无mysql对应的端口,说明端口设置有问题。
开放防火墙端口或添加需要监听的端口
- /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
开启3306端口监听,开启后如下图
扩展知识,防火墙其他相关操作
- 临时关闭防火墙服务:service iptables stop
- 开启防火墙服务:service iptables start
- 开机不再启动防火墙服务:chkconfig iptables off
2、授权MySQL远程登陆
连接到mysql服务器,执行下面的命令:
- mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
操作完后刷新权限 :
- flush privileges;
3、最后通过navicat远程链接MySQL,链接测试,如下图:
Linux学习—mysql安装配置及远程连接的更多相关文章
- Linux学习—redis安装配置及远程连接
1.下载安装包并解压 进入文件夹/usr/local cd /usr/local 下载redis安装包: wget http://download.redis.io/releases/redis-.t ...
- Linux 数据库MySql 安装配置教程!
本文价绍Linux 相关mysql 安装和配置以及基本连接测试 1官网下载安装mysql-server # wget http://dev.mysql.com/get/mysql-community- ...
- linux 学习 mysql安装到连接
在Centos7.6 上安装mysql ps:一般mysql安装后会在/var/log/下面生成一个mysqld.log文件,如果遇到启动不了或者其他问题,基本都可以在这个log文件里面找到错误原因 ...
- Linux下MySQL 安装配置
MySQL 是最流行的关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言. MySQL由于其体积小.速度快 ...
- Linux防火墙iptables安装配置--使用远程工具Xmanager和ftp服务安装配置
一.linux关闭防火墙: a.用户直接在终端输入:service iptables stop 查看防火墙状况:service iptables status b.root用户在终端输 ...
- linux学习笔记-安装配置使用clamav杀毒软件
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 1.安装clamav 2.更新病毒库 # freshclam 如果更新不了,或者更新特别慢,可以手动下载病毒库文件,放到/var ...
- LINUX学习-Mysql安装
一.安装环境 操作系统CentOS6.8 关闭SeLinux和iptables防火墙 二.网络yum源 将下面的软件下载到 /etc/yum.repos.d/ 的目录下 官方基础:http:// ...
- Linux普通用户安装配置mysql(非root权限)
Linux普通用户安装配置mysql(非root权限) 说明:在实际工作中,公司内网的机器我们一般没有root权限,也没有连网,最近参考网上的资料使用一般的账户成功安装mysql,记录如下 Linux ...
- Linux下MySQL安装及配置
Linux下MySQL安装及配置 安装MySQL Ubuntu系统中,直接使用apt install的方式去安装MySQL的服务端和客户端,MySQL的客户端必须安装,否则无法通过命令连接并操作MyS ...
随机推荐
- java -为什么重写equals(),还需要重写hashCode()?
1.先post这两个方法的基本定义: equals()的定义: 浅谈Java中的equals和==(转) hashCode()的定义: java中hashCode()方法的作用 Java中hashCo ...
- Java&Selenium 鼠标键盘及滚动条控制相关方法封装
一.摘要 本片博文主要展示在使用Selenium with java做web自动化时,一些不得不模拟鼠标操作.模拟键盘操作和控制滚动条的java代码 二.模拟鼠标操作 package util; im ...
- 2.Locust 跑起来试试
代码 from locust import HttpLocust, TaskSet, task class UserBehavior(TaskSet): @task def baidu(self): ...
- H5项目 使用Cropper.js 实现图片 裁剪 操作 (APP端)
参考地址: 1.https://www.jianshu.com/p/b252a7cbcf0b 2.https://blog.csdn.net/weixin_38023551/article/detai ...
- 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 ...
- Go学习笔记(六) | 使用swaggo自动生成Restful API文档(转)
关于Swaggo 或许你使用过Swagger, 而 swaggo就是代替了你手动编写yaml的部分.只要通过一个命令就可以将注释转换成文档,这让我们可以更加专注于代码. 目前swaggo主要实现了sw ...
- Finding Lane Lines on the Road
Finding Lane Lines on the Road The goals / steps of this project are the following: Make a pipeline ...
- TabSheet源码
TabSheet.h #if !defined(AFX_TABSHEET_H__42EE262D_D15F_46D5_8F26_28FD049E99F4__INCLUDED_) #define AFX ...
- 自动上传本地图片和word图片(word图片需使用从word粘贴功能)
在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...
- CentOS7从一般用户切换到root用户
可以使用如下命令从普通用户切换到root用户: su root 键入回车后,系统提示输入密码(此密码即你平时使用的那个用户的密码.关于这一点我还没有确定是否所有用户都可以切换到root用户身份).验证 ...