Linux彻底卸载删除Mysql和安装mysql
mysql 卸载
1.如果已安装成功 则需要卸载前请先关闭Mysql服务 命令:service mysql stop
2.使用 rpm 命令的方式查看已安装的mysql 命令:rpm -qa|grep mysql
3.使用yum安装的Mysql需要先进行清除 命令:yum remove mysql mysql-server mysql-libs mysql-server
4.再次查询是否有剩余文件 命令:rpm -qa|grep mysql
5.使用过rpm -ev +对应文件名 删除剩余文件 命令:
rpm -ev mysql80-community-release-el7-1.noarch
rpm -ev mysql-community-client-plugins-8.0.25-1.el7.x86_64
rpm -ev mysql-community-common-8.0.25-1.el7.x86_64
6.查询是否还存在Mysql相关遗漏文件(有则使用对应删除命令删除)
mysql 安装
1.下载mysql
mysql官网:https://dev.mysql.com/downloads/mysql/
将下载的mysql上传打linux
2.解压并重命名
[root@rsyncClient local]# tar -zxvf mysql-8.0.18-el7-x86_64.tar.gz -C /usr/local/ [root@rsyncClient local]# mv mysql-8.0.18-el7-x86_64/ mysql
3.在mysql根目录下创建data目录,存放数据
[root@rsyncClientopt]# cd /usr/local/mysql/
[root@rsyncClient mysql]# mkdir data
4.创建mysql用户组和mysql用户
[root@rsyncClient local]# groupadd mysql[root@rsyncClient local]# useradd -g mysql mysql
5.改变mysql目录权限
[root@rsyncClient local]# chown -R mysql.mysql /usr/local/mysql/
6.初始化数据库
[root@iZbp1iwvf9mlryt1ml8tdrZ mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --lower-case-table-names=1
7.配置mysql
在mysql/support-files创建文件my-default.cnf
[root@rsyncClient support-files]# cd /usr/local/mysql/support-files/
[root@rsyncClient support-files]# touch my-default.cnf
复制配置文件到/etc/my.cnf
[root@rsyncClient support-files]# cp -a ./my-default.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? y
编辑my.cnf
[client]
port=3306
socket=/tmp/mysql.sock[mysqld]
port=3306
user=mysql
socket=/tmp/mysql.sock
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
8.配置环境变量
编辑 / etc/profile 文件
[root@rsyncClient mysql]# vim /etc/profile
#配置mysql环境变量
PATH=/data/mysql/bin:/data/mysql/lib:$PATH
export PATH
#让其生效
[root@rsyncClient mysql]# source /etc/profile
#看环境变量是否生效
[root@rsyncClient mysql]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
9.启动mysql
[root@rsyncClient mysql]# systemctl start mysqld
启动失败报错1:
Job for mysql.service failed because the control process exited with error code. See “systemctl status mysql.service” and “journalctl -xe” for details.
解决方案:
[root@rsyncClient ~]# chown mysql:mysql -R /usr/local/mysql/
启动失败报错2:
[root@rsyncClient mysql]# service mysql start
/etc/init.d/mysql: ./bin/my_print_defaults: /lib/ld-linux.so.2: bad ELF interpreter: No such file or
directory Starting MySQL. ERROR! The server quit without
updating PID file (/var/lib/mysql/rsyncClient.pid).
去这个目录下面查看 cat/usr/local/mysql/data/rsyncClient.err错误,对应的的解决,这里错误是因为my.conf配置错误
启动失败报错3:
mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file:No such file or directory
[root@rsyncClient init.d]# yum install libncurses.so.5
以这个为例,如果缺少这样依赖,直接用yum安装
启动失败报错4:
[root@rsyncClient data]# mysql -uroot -p
Enter password:
ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded:
/usr/lib/mysql/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory
身份验证插件不能加载
解决办法:
[root@rsyncClient lib]# vim /etc/my.cnf
在这个[mysqld]下添加一行:
default_authentication_plugin=mysql_native_password
如果忘记了密码在加上:
skip-grant-tables(跳过密码验证)等设置了密码就去掉
10. 使用systemctl命令启动关闭mysql服务
启动mysql服务:
#systemctl start mysqld.service
停止mysql服务
#systemctl stop mysqld.service
重启mysql服务
#systemctl restart mysqld.service
查看mysql服务当前状态
#systemctl status mysqld.service
设置mysql服务开机自启动
#systemctl enable mysqld.service
停止mysql服务开机自启动
#systemctl disable mysqld.service
11.mysql的基本操作
使用mysql客户端连接mysql
/usr/local/mysql/bin/mysql -u root -p password
修改mysql的默认初始化密码
alter user’root’@‘localhost’ identified by’root’;
创建用户 CREATE USER ‘用户名称’@‘主机名称’ IDENTIFIED BY ‘用户密码’
create user ‘yehui’@‘localhost’ identified by ‘yehui’;
#给所有远程登录的进行授权,此方式已经报错了
grant all privileges on . to ‘root’@‘%’ identified by ‘root’ with grant option;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘identified by ‘root’ with grant option’ at line 1
修改root用户可以远程连接
update user set Host=‘%’ where User=‘root’;
授予权限 grant 权限 on 数据库.表 to ‘用户名’@‘登录主机’ [IDENTIFIED BY ‘用户密码’];
grant replication slave on . to’yehui’@‘localhost’;
#刷新
flush privileges;
#权限问题可以参考https://www.cnblogs.com/php-linux/p/11561300.html
复制代码
12.防火墙问题
[root@rsyncClient data]# firewall-cmd --permanent --zone=public --add-port=3306/tcp #允许访问
success
[root@rsyncClient data]# firewall-cmd --reload #重新加载
success
[root@rsyncClient data]# firewall-cmd --permanent --zone=public --query-port=3306/tcp #查看是否开通访问权限
yes
doker 安装mysql8 并开启不区分大小写
如果要指定版本,使用下面的命令
$ docker pull mysql:8.0.16
创建数据目录和配置文件
在宿主机创建放置mysql的配置文件的目录和数据目录,并且进行授权
$ mkdir -p /usr/mysql/conf /usr/mysql/data$ chmod -R 755 /usr/mysql/
创建配置文件
在上面创建的配置文件目录/usr/mysql/conf下创建MySQL的配置文件my.cnf
$ vim /usr/mysql/conf/my.cnf
添加以下内容到上述创建的配置文件中
[client]#socket = /usr/mysql/mysqld.sockdefault-character-set = utf8mb4[mysqld]#pid-file = /var/run/mysqld/mysqld.pid#socket = /var/run/mysqld/mysqld.sock#datadir = /var/lib/mysql#socket = /usr/mysql/mysqld.sock#pid-file = /usr/mysql/mysqld.pid
lower_case_table_names=1datadir = /usr/mysql/datacharacter_set_server = utf8mb4collation_server = utf8mb4_binsecure-file-priv= NULL# Disabling symbolic-links is recommended to prevent assorted security riskssymbolic-links=0# Custom config should go here!includedir /etc/mysql/conf.d/
启动创建容器
$ docker run --restart=unless-stopped -d --name mysql -v /usr/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /usr/mysql/data:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0.16
参数解释:
-v : 挂载宿主机目录和 docker容器中的目录,前面是宿主机目录,后面是容器内部目录-d : 后台运行容器
-p 映射容器端口号和宿主机端口号
-e 环境参数,MYSQL_ROOT_PASSWORD设置root用户的密码
执行上述命令后,执行查询容器的命令就可以看到创建的mysql容器
$ docker ps -a
结果如下所示:
问题
上述虽然安装好了mysql,但是使用远程的Navicat连接时提示错误,不能正确连接mysql,此时需要修改按照下面说的步骤修改一下mysql的密码模式以及主机等内容才可以。
修改mysql密码以及可访问主机
- 进入容器内部
$ docker exec -it mysql /bin/bash
- 连接mysql
$ mysql -uroot -p
- 使用mysql库
$ mysql> use mysql
- 修改访问主机以及密码等,设置为所有主机可访问
$ mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '新密码';
如果执行失败修改user表中的Host: update user set Host=‘%’ where User=‘root’;
说明: % 代表任意的客户端,可替换成具体IP地址。再执行上面SQL;
注意:
mysql_native_password,mysql8.x版本必须使用这种模式,否则navicate无法正确连接
- 刷新
$ mysql> flush privileges
经过以上步骤,再次远程使用Navicat连接数据库时就可以正常连接了。
查看是否区别大小写:show VARIABLES like ‘%low%’ 已生效
Linux彻底卸载删除Mysql和安装mysql相关推荐
- linux系统安装(CentOS 7) 和软件安装(mysql,tomcat,jdk)
linux系统安装(CentOS 7) 和软件安装(mysql,tomcat,jdk) 目录 linux系统安装(CentOS 7) 和软件安装(mysql,tomcat,jdk) 软件准备 ## 系 ...
- Linux下yum安装MySQL yum安装MySQL指定版本
yum 安装MySQL 1. 检查安装情况 查看有没有安装过: yum list installed MySQL* (有存在要卸载yum remove MySQL*) rpm -qa | grep m ...
- yum如何卸载mysql_linux下 yum 安装mysql和卸载
1.查看有没有安装过: yum list installed mysql* rpm -qa | grep mysql* 2.查看有没有安装包: yum list mysql* 3.安装mysql客户端 ...
- linux 安装mysql make_Linux安装mysql——源码安装
1.假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源文件 (1)先安装cmake(mysql5.5以后是通过cmake来编译的) [root@ rhel5 ...
- linux怎么卸载源码包安装mysql_Linux下卸载和安装MySQL[rpm包]
[日期:2012-08-03] 来源:Linux社区 作者:wang_tianbao [字体:大 中 小] 一.卸载原来的mysql: 卸载一: 输入: #rpm -qa | grep -i mys ...
- l源码安装mysql升级_[Linux]javaEE篇:源码安装mysql
javaEE :源码安装mysql 安装环境 系统平台:CentOS-7-x86_64 数据库版本:mysql-5.6.14 源码安装mysql步骤: 一.卸载mysql 安装mysql之前,先确保l ...
- 32linux下安装mysql5.7_【Linux】【MySQL】安装MySQL,版本5.7
本文环境:CentOS7,安装包放在/home/mysql 或者直接在Linux上wget https://downloads.mysql.com/archives/get/p/23/file/mys ...
- linux 无外网情况下安装 mysql
由于工作需要,需要在一台装有 CentOS 系统的测试服务器上安装 MySQL ,由于该服务器上存有其他比较重要的测试数据,所以不能连接外网.由于之前安装 MySQL 一直都是使用 yum 命令一键搞 ...
- 【实施工程师之家】linux安装mysql(yum安装mysql)
目录 查看环境 修改下载位置 安装 repo 包 安装 MySQL 启动MySQL 设置开机自启 登录MySQL 修改密码 外网访问 防火墙设置,开放3306端口 查看环境 rpm -qa | g ...
最新文章
- 坑系列 —— 缓存+哈希=高并发?
- 华为北大等联手打造的Transformer竟在CV领域超过了CNN:多项底层视觉任务达到SOTA...
- GIS 缓冲区应用及算法实现
- 微软宣布推出Windows Embedded Compact 2013正式版
- aapt2 生成资源 public flag 标记
- Html img 标签
- call / apply / bind
- 线程同步以及yield()、wait()、Notify()、Notifyall()
- LeetCode 2057. 值相等的最小索引
- 维大杀器来了,未来云上服务器或将实现无人值守
- Codeforces Round #162 (Div. 2) B. Roadside Trees (Simplified Edition)
- Win32 SDK消息处理技巧
- 错误契约(FaultContract)与异常处理(转)
- 论文赏析[ACL18]直接到树:基于神经句法距离的成分句法分析
- 解决IDEA中maven搭建web项目,在maven中有依赖但是在部署包中生成不出依赖
- USB Type C告白
- 为什么 DNS 使用 UDP 协议
- 核心价值观与企业文化管理实践---基于华为的企业文化的管理实践-林 安老师
- html语言如何排版,html语言,使用table排版.docx
- ARMV8体系结构简介:AArch64系统级体系结构之Self-hosted debug
热门文章
- 机器学习从入门到出家
- 西瓜书--学习笔记1
- 使用mybatisplus的insert方法报错:org.apache.ibatis.reflection.ReflectionException: Could not set property
- 延迟标记 (线段树)
- vuex mapGetters
- 使用腾讯位置服务实现类滴滴汽车沿轨迹行驶功能
- “是啊,不是姓朱的那种败类就好,
- 头歌(educoder)第 5 章 Java 面向对象之类和对象 Java面向对象 - 类与对象
- Java笔记2:使用命令行编译运行“Helloworld”
- MySQL历史,名称由来及版本