zoukankan      html  css  js  c++  java
  • 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.23-linux-glibc2.12-x86_64.tar.gz
    [root@localhost data]# ln -s mysql-5.7.23-linux-glibc2.12-x86_64 mysql
    [root@localhost data]# 
    
    建立存放日志等目录
    cd /data/mysql-5.7.23-linux-glibc2.12-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= 3306
    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 = 3306
    user= mysql
    port= 3306
    basedir= /data/mysql
    datadir= /data/mysql/data
    socket= /data/mysql/run/mysql.sock
    pid-file = /data/mysql/run/mysqld.pid
    
    skip_name_resolve = 1
    open_files_limit = 65535
    back_log = 1024
    max_connections = 1024
    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 750 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(8)
    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=0
    
    # 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 = 65535
    
    Restart=on-failure
    
    RestartPreventExitStatus=1
    
    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
    2018-09-24T07:54:08.055154Z 1 [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
  • 相关阅读:
    链接的思考
    反向传播算法为什么要“反向”
    浅说机器学习理论
    体验一下5分钟快速迁移mysql近亿数据量大表的速度!!!
    (MHA+MYSQL-5.7增强半同步)高可用架构设计与实现
    MySQL-开发规范升级版
    Mysql 优化建议
    Percona XtraDB Cluster(PXC)-高可用架构设计说明
    企业级-Mysql双主互备高可用负载均衡架构(基于GTID主从复制模式)(原创)
    记一次测试环境下PXC集群问题《经验总结》
  • 原文地址:https://www.cnblogs.com/FengGeBlog/p/10403122.html
Copyright © 2011-2022 走看看