zoukankan      html  css  js  c++  java
  • 1.二进制安装mysql5.7

    • 创建mysql用户,并设置为不可登陆
    [root@db01 ~]# useradd -s /sbin/nologin mysql
    • 创建软件目录和数据存储目录,并挂载一块磁盘到数据库存储目录
    [root@db01 ~]# mkdir /application
    [root@db01 ~]# mkdir /data
    #格式化新加的磁盘
    [root@db01 ~]# mkfs.xfs /dev/sdc
    #查看磁盘UUID
    [root@db01 ~]# blkid
    #开机挂载磁盘
    [root@db01 ~]# vim /etc/fstab 
    UUID="b7fde522-aa37-412a-9584-8313a673c5cc" /data xfs defaults 0 0
    #加载/etc/fstab
    [root@db01 ~]# mount -a
    [root@db01 ~]# df -h
    [root@db01 ~]# chown -R mysql.mysql /application/*
    [root@db01 ~]# chown -R mysql.mysql /data
    
    • 解压软件到软件目录,并创建软连接
    [root@db01 ~]# tar xf mysql-5.7.26-.tar.gz -C /application
    [root@db01 ~]# ln -sv /application/mysql-5.7.26 /application/mysql
    
    • 设置环境变量
    [root@db01 ~]# vim /etc/profile
    export PATH=/application/mysql/bin:$PATH
    [root@db01 ~]# source /etc/profile
    
    • 初始化数据库
    #5.6版本:
    /application/mysql/scripts/mysql_install_db 
    #5.7版本:需要先创建数据目录/data/mysql/data
    mysqld --initialize-insecure --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data
    
    #报错:
    mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
    解决:
    [root@db01 ~]# yum install -y libaio-devel
    
    • 创建配置文件
    cat >/etc/my.cnf <<EOF
    [mysqld]
    user=mysql
    basedir=/application/mysql
    datadir=/data/mysql/data
    log_error=/data/mysql/mysql-error.log
    socket=/tmp/mysql.sock
    server_id=6
    port=3306
    [mysql]
    socket=/tmp/mysql.sock
    EOF
    • mysql5.7的密码策略太烦人了,可以配置文件中关掉,mysqld配置段
    validate_password=off
    • 创建systemd接管文件
    cat >/etc/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
    ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf
    LimitNOFILE = 5000
    EOF
    
    • 启动mysql
    [root@db01 ~]# systemctl start mysql
    • 初始化root密码,mysql默认密码在日志文件中,grep 'temporary password' /data/mysql/mysql-error.log 
    #mysqladmin -u用户名 -p旧密码 password 新密码
    [root@db01 ~]# mysqladmin -uroot -p password 123456
    Enter password: 
    
    • 忘记mysql管理员密码
    #关闭数据库
    [root@db01 ~]# systemctl stop mysqld
    
    #启动安全模式
    [root@db01 ~]# mysqld_safe --skip-grant-tables --skip-networking &
    
    #登录并修改密码
    [root@db01 ~]# mysql
    mysql> flush privileges;
    mysql> alter user root@'localhost' identified by '1';
    
    #关闭数据库并正常启动
    

      

    初学linux,每学到一点东西就写一点,如有不对的地方,恳请包涵!
  • 相关阅读:
    慎用ViewController的跳转
    Cocos2d中从场景切换到UIViewController视图方法总结
    presentModalViewController
    NSString / NSMutableString 字符串处理,常用代码 (实例)
    NSXMLParser解析xml
    preformselector 多个参数设置
    UITableView 异步加载图片缓存 笔记
    消息通信机制NSNotificationCenter
    UITableView进行讲解 真的是太详细了
    CLR读书笔记第二章 生成,打包,部署和管理应用程序及类型
  • 原文地址:https://www.cnblogs.com/forlive/p/12745718.html
Copyright © 2011-2022 走看看