ubuntu16.04系统彻底卸载mysql,并源码免编译重装MySQL的步骤
今天的总结
ubuntu上彻底卸载MySQL或重新安装 https://www.jianshu.com/p/974b33873bca #查看是否存在mysql服务
service mysql status #查看安装了MySQL的相关软件包
dpkg --get-selections | grep mysql #卸载MySQL
apt-get remove --purge mysql-* #清除本地残留文件
apt autoclean #清除无用依赖包(可选)
apt autoremove #删除MySQL残留文件
rm -rf /etc/mysql /var/lib/mysql 免编译安装MySQL的方法 安装必要的依赖包
apt-get install libaio1 添加mysql用户 解压MySQL安装包
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql -s /bin/false mysql
[root@localhost ~]# mkdir -p /data
[root@localhost ~]# cd /data
[root@localhost data]# tar zxf mysql-5.7.-linux-glibc2.-x86_64.tar.gz
[root@localhost data]# ln -s mysql-5.7.-linux-glibc2.-x86_64 mysql
[root@localhost data]# 建立存放日志等目录
cd /data/mysql-5.7.-linux-glibc2.-x86_64/
mkdir logs binlogs run 删除旧配置文件
rm -rf /etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf 新增MySQL的配置文件/etc/my.cnf cat > /etc/my.cnf << EOF
[client]
default-character-set = utf8mb4
port=
socket= /data/mysql/run/mysql.sock [mysql]
default-character-set = utf8mb4
prompt = " \u@\h \R:\m:\s [\d]> "
no-auto-rehash
socket= /data/mysql/run/mysql.sock [mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
character-set-client-handshake = FALSE server-id =
user= mysql
port=
basedir= /data/mysql
datadir= /data/mysql/data
socket= /data/mysql/run/mysql.sock
pid-file = /data/mysql/run/mysqld.pid skip_name_resolve =
open_files_limit =
back_log =
max_connections =
log-error = /data/mysql/logs/mysql-error.log
EOF 初始化MySQL [root@localhost data]# cd /data/mysql
[root@localhost mysql]# mkdir mysql-files
[root@localhost mysql]# chown mysql:mysql mysql-files
[root@localhost mysql]# chmod mysql-files
[root@localhost mysql]# chown -R mysql:mysql .
[root@localhost mysql]# bin/mysqld --initialize --user=mysql --basedir=/data/mysql --datadir=/data/mysql/data
[root@localhost mysql]# bin/mysql_ssl_rsa_setup --datadir=/data/mysql/data ubuntu的unit file路径/lib/systemd/system cat > /lib/systemd/system/mysqld.service << EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld()
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target [Install]
WantedBy=multi-user.target [Service]
User=mysql
Group=mysql Type=forking PIDFile=/data/mysql/run/mysqld.pid # Disable service start and stop timeout logic of systemd for mysqld service.
TimeoutSec= # Execute pre and post scripts as root
PermissionsStartOnly=true # Needed to create system tables
#ExecStartPre=/usr/bin/mysqld_pre_systemd # Start main service
ExecStart=/data/mysql/bin/mysqld --daemonize --pid-file=/data/mysql/run/mysqld.pid $MYSQLD_OPTS # Use this to switch malloc implementation
EnvironmentFile=-/etc/sysconfig/mysql # Sets open_files_limit
LimitNOFILE = Restart=on-failure RestartPreventExitStatus= PrivateTmp=false
EOF 配置MySQL环境变量 echo "export PATH=$PATH:/data/mysql/bin" >> /etc/profile
source /etc/profile 启动与开机启动MySQL
systemctl daemon-reload
systemctl start mysqld.service
systemctl enable mysqld.service
systemctl is-enabled mysqld 用临时密码登录并修改临时密码
[root@localhost ~]# grep 'temporary password' /data/mysql/logs/mysql-error.log
--24T07::.055154Z [Note] A temporary password is generated for root@localhost: p=lXlKKrg4GJ
[root@localhost ~]# mysql -urrott -p "p=lXlKKrg4GJ"
mysql shell > alter user root@'localhost' identified by 'root12#$';
mysql shell > \q
ubuntu16.04系统彻底卸载mysql,并源码免编译重装MySQL的步骤的更多相关文章
- CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作
CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作 2018年07月05日 00:28:38 String峰峰 阅读数:2614 使用yum安装的MySQL一般版本比较旧,但 ...
- CentOS 7.4 使用源码包编译安装MySQL 5.7.20
使用yum安装的MySQL一般版本比较旧,但是运行稳定.如果想要尝试最新的功能或者需要指定特殊的功能的话,就需要手工进行编译安装了. 一.下载安装包 (一).先下载MySQL源码,网址为:https: ...
- Ubuntu16.04 安装和卸载MySQL数据库
Ubuntu16.04 安装和卸载MySQL数据库 1 安装 安装非常简单,只需要三个命令 1.1 安装服务端 sudo apt-get install mysql-server 在这一步过程中会有提 ...
- Ubuntu16.04系统美化、常用软件安装等,长期更新
Ubuntu16.04系统美化.常用软件安装等,长期更新 IT之家啊 18-09-0915:00 因为我个人偏向于玩VPS.服务器之类的东西,所以一般我都是用CentOS.不过对于桌面版的Linux, ...
- Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统
Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统 这个是写好的Django程序在本地机运行的情况,一个查询接口. 准备工作 1.首先购买一台阿里云的EC ...
- 【Android 系统开发】CyanogenMod 13.0 源码下载 编译 ROM 制作 ( 手机平台 : 小米4 | 编译平台 : Ubuntu 14.04 LTS 虚拟机)
分类: Android 系统开发(5) 作者同类文章X 版权声明:本文为博主原创文章 ...
- ubuntu16.04系统精简
ubuntu16.04系统精简 一.更新系统 apt-get update apt-get dist-upgrade 二.查看所有内核 sudo dpkg --get-selections |grep ...
- Ubuntu16.04系统中不同版本Python之间的转换
Ubuntu系统自带的版本是2.7.12 安装好python3.6之后,改变一下Python的优先级(需要root权限). 在使用下面这个命令查看电脑里面有几个Python版本 update-alte ...
- 虚拟机桥接模式下多台Ubuntu16.04系统互相连接
1.首先新建一个虚拟机并在该虚拟机上安装Ubuntu16.04系统.为这台虚拟机起名为Ubuntu3. 2.对Ubuntu3进行克隆,为新克隆生成的虚拟机起名为Ubuntu2.(这时我们会发现Ubun ...
随机推荐
- 使用 Notification API 开启浏览器桌面提醒
Notifications API 允许网页控制向最终用户显示系统通知 —这些都在顶级浏览上下文视口之外,因此即使用户已经切换标签页或移动到不同的应用程序,也可以显示.该API被设计成与不同平台上的现 ...
- PHP-CPP开发扩展(三)
PHP-CPP是一个用于开发PHP扩展的C++库.本节讲解PHP函数形参相关的实现. 指定函数参数类型 有时候,我们需要指定函数的形参是数组或者指定的,那么在PHP-CPP里是否可以指定函数的参数类型 ...
- SpringBoot+Mybatis+Pagehelper分页
1.pom.xml <!-- mybatis分页插件 --> <dependency> <groupId>com.github.pagehelper</gro ...
- 【PyTorch深度学习60分钟快速入门 】Part4:训练一个分类器
太棒啦!到目前为止,你已经了解了如何定义神经网络.计算损失,以及更新网络权重.不过,现在你可能会思考以下几个方面: 0x01 数据集 通常,当你需要处理图像.文本.音频或视频数据时,你可以使用标准 ...
- SQL优化原则(转)
一.问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统 ...
- Jenkins持续集成学习-Windows环境进行.Net开发3
目录 Jenkins持续集成学习-Windows环境进行.Net开发3 目录 前言 目标 优化nuget包生成流程 自动触发构建 Jenkins定时轮询触发 SVN客户端钩子触发 SVN服务器钩子触发 ...
- 跨站请求伪造CSRF(Cross-site request forgery)
CSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站 ...
- Java框架之Struts2(一)
在学习Struts2之前,我们要知道Java为什么要有反射机制呢?反射机制可以说是填补Java不能动态访问某一个类的空白.利用反射机制,动态的创建一个对象.动态的访问类的某个属性,而且访问哪一个属性自 ...
- Netty网络聊天(一) 聊天室实战
首发地址; Netty网络聊天(一) 聊天室实战 之前做过一个IM的项目,里面涉及了基本的聊天功能,所以注意这系列的文章不是练习,不含基础和逐步学习的部分,直接开始实战和思想引导,基础部分需要额外的去 ...
- 前端开发周报: CSS 布局方式方式与JavaScript数据结构和算法
前端开发周报:CSS 布局方式与JavaScript动画库 1.常见 CSS 布局方式详见: 一些常见的 CSS 布局方式梳理,涉及 Flex 布局.Grid 布局.圣杯布局.双飞翼布局等.http: ...