zoukankan      html  css  js  c++  java
  • Linux安装MySQL5.7

    1. 下载 MySQL安装包 tar.gz

    下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

    2. 上传到服务器并解压

    上传服务器的目录看个人喜好,这里上传到 /opt/software。

    tar -xvf mysql-5.7.30-linux-glibc2.12-x86_64.tar  
    

      解压后出来有两个压缩包 mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz ,mysql-test-5.7.30-linux-glibc2.12-x86_64.tar.gz。这里将 mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz 进行解压并重命名一下,解压可以指定目录.

    tar -zxvf  mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /opt/local
    mv mysql-5.7.30-linux-glibc2.12-x86_64 mysql-5.7.30 
    

      

    3. 创建mysql用户组和用户并修改权限

    groupadd mysql  # 创建mysql用户组
    useradd -r -g mysql mysql #创建mysql用户
    mkdir -p  mysql-5.7.30/data   #创建数据目录,这里我创建到mysql安装目录里面,
    chown mysql:mysql -R mysql-5.7.30  #赋予权限,如果数据目录不在mysql安装目录,则还需要将数据目录的权限赋予mysql组和用户
    

     4.  配置/etc/my.cnf

    vim /etc/my.cnf,配置内容如下

    bind-address=0.0.0.0
    port=3306
    user=mysql
    basedir=/opt/local/mysql-5.7.30   # 安装目录
    datadir=/opt/local/mysql-5.7.30/data #数据目录
    socket=/tmp/mysql.sock
    log-error=/opt/local/mysql-5.7.30/mysql.err  # 日志
    pid-file=/opt/local/mysql-5.7.30/mysql.pid  # 进程文件
    #character config
    character_set_server=utf8mb4
    symbolic-links=0
    explicit_defaults_for_timestamp=true
    explicit_defaults_for_timestamp ge

    更多my.cnf的配置详细可自行去查阅资料。

    5. 初始化数据库

    进入到mysql的bin目录执行

    ./mysqld --basedir=/opt/local/mysql-5.7.30 --datadir=/opt/local/mysql-5.7.30/data --user=mysql --initialize
    

      查看初始化密码,在mysql.err文件

    cat mysql-5.7.30/mysql.err  # 初始密码在:最后一行root@localhost: 初始密码
    

    6. 启动mysql,并更改root 密码

    先将mysql.server放置到/etc/init.d/mysql中

    cp mysql-5.7.30/support-files/mysql.server /etc/init.d/mysql
    

      启动

    service mysql start  # 启动    
    chkconfig mysql on # 该命令可以开机自启动mysql
    ps -ef | grep mysql # 查看进程
    

    7. 修改密码

    ./mysql -u root -p   #bin目录下,然后输入密码,初始密码在mysql.err文件
    # 在然后执行以下三个命令
    SET PASSWORD = PASSWORD('123456');
    ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
    FLUSH PRIVILEGES;   
    

      如果连接Mysql出现 Access denied for user 'root'@'localhost'(using password: YES)错误,可参考 https://www.cnblogs.com/boris-et/p/8316953.html。

    8. 远程连接

    连接出现 Host ‘xxx.xxx.xx.x’ is not allowed to connect to this MySQL server的话,去服务器登录mysql,执行一下命令

    use mysql    #访问mysql库
    update user set host = '%' where user = 'root';     #使root能再任何host访问
    FLUSH PRIVILEGES;  #刷新

    再次远程连接成功!

    额外可能用到的命令

    service mysql stop # 停止mysql 服务
    service mysql restart  重启mysql 服务
    

     本文抄自:https://blog.csdn.net/qq_37598011/article/details/93489404

  • 相关阅读:
    宝贝,对不起
    转帖]四川人逆境中的幽默(整理)
    见闻大量急救车急速行驶有感
    5月16日当代第一IT诗人代腾飞17XIE在线访谈(转)
    陈风莲(帮别人名字作诗)
    愉快且卓有成效:培养你与人相处的能力
    夜半再次遭遇地震
    请允许我像亲人一样去爱你
    DiscoveryService.getRemoteAdvertisements是否会获得本地通告?
    windowClosed事件不响应
  • 原文地址:https://www.cnblogs.com/huangchangpei/p/13088347.html
Copyright © 2011-2022 走看看