zoukankan      html  css  js  c++  java
  • 部署WEB项目到服务器(三)安装mysql5或者mysql8到linux服务器(Ubuntu)详解

    突发奇想,想在自己电脑上部署一个web网站。

    1,首先是下载一个适合自己已安装服务器版本的mysql数据库。

    这里使用网上的链接http://dev.mysql.com/downloads/mysql/5.6.html#downloads

    或者使用代理网站上下载:https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-8.0/mysql-8.0.13.tar.gz(过期)

    【https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-8.0/mysql-8.0.17-el7-x86_64.tar 安装mysql8见最下面

    或者:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.25-linux-glibc2.12-i686.tar.gz

    下载完成后使用FIleZille上传到服务器的/opt目录

    2,创建目录 然后解压缩 最后创建软链接

       cd /usr/local

       mkdir mysql

       tar -zxvf mysql-advanced-5.6.14-linux-glibc2.5-i686.tar.gz

       ln -s mysql-advanced-5.6.14-linux-glibc2.5-i686 mysql

    3,添加用户和组

       groupadd mysql

       useradd -g mysql mysql 

    4,安装mysql

      首先在mysql目录下新建数据存放目录:

       mkdir data  

        mkdir mysql

      再改变组: chown -R mysql:mysql ./mysql

      安装:/usr/local/mysql/mysql/scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/mysql

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

                chmod 755 /etc/init.d/mysqld

                cp support-files/my-default.cnf /etc/my.cnf

    ps: 在安装第一步时可能会遇到不能安装的问题:libaio.so.1: cannot open shared object file

      网上给出了很多解决办法(12),我尝试了一个,很有用:sudo apt-get install libaio1 

    5,修改启动脚本

      vi /etc/init.d/mysqld

           basedir=/usr/local/mysql/

      datadir=/usr/local/mysql/data/mysql

    6,加入环境变量这样在任何地方都可以使用mysql命令了

      vi /etc/profile

      在PATH变量后面添加   :/usr/local/tomcat/server/bin

      

          重启服务器。

    7,启动mysql,登录mysql ,查看mysql状态,关闭mysql

         service mysqld start

         mysql -uroot -p

         service mysqld status

         service mysqld stop

     ps:

    安装完成后第一次登录推荐使用 mysql 命令,因为第一次没有密码,所以我们要设置。

    在启动mysql数据库的情况下:

    使用mysql命令进入mysql命令行

    use mysql;

    update user set password=passworD("xroot") where user='root';

    flush privileges;

    exit;

     我这里因为改过密码了所以使用了密码方式进入:mysql -uroot -p

    推荐几个可能会用到的网址:

    Linux下修改Mysql的用户(root)的密码
    linux mysql 操作命令
    mysql在linux下的安装
    linux下安装Mysql

    至此mysql数据安装成功。 

    安装mysql8

    1.进官网,选择适合自己版本的linux下的MYSQL版本。(下载见上面的连接

    2.将其下载好的mysql-8.0.15-el7-x86_64.tar.gz 上传至linux系统中进行解压 。
    (1)本人将这个文件上传至/root/ 目录下,首先查看 /root/目录下的文件。以确保系统中有这个文件。
    cd /root/ ls

    (2)将文件进行解压。
    tar -zxvf mysql-8.0.15-el7-x86_64.tar.gz
    然后会在当前 /root/ 目录下会生成 这个目录。

    3.对mysql进行安装。
    (1)将mysql-8.0.15-el7-x86_64 安装到 /usr/local/mysql 下。
    mv mysql-8.0.15-el7-x86_64 /usr/local/mysql //将文件移动到 /usr/local/ 目录下,并更名为mysql

    (2)为系统添加mysql 组和用户。

    groupadd mysql
    useradd -u 544 -d /home/mysql -g mysql -m  mysql


    (3)进入 /usr/local/mysql 目录下,修改相关权限。
    cd /usr/local/mysql //进入/usr/local/mysql 目录 chown -R mysql:mysql ./
    //修改当前目录为mysql用户
    (4)mysql初始化操作,记录下临时密码,之后第一次登录的时候会用到。

    bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data //运行完成会生成一个暂时的密码。


    结果如下

    (5)查看初始化过程中有没有自动生成my.cnf 文件.
    cd /etc/ //进入/etc/目录下 ls | grep my.cnf //查看是否有my.cnf 文件。有则会产生结果。
    (6) 初始化生成了my.cnf 文件,跳至第八步,修改my.cnf 文件的信息。

    (7) 如果初始化过程中没有生成my.cnf , 新建一个my-defalut.cnf文件,将其复制到/etc/my.cnf
    touch my-defalut.cnf //新建一个文件 chmod 755 my-defalut.cnf // 赋予权限 cp
    my-defalut.cnf /etc/my.cnf // 将文件复制到/etc/ 目录下,并更名为my.cnf 文件名。
    (8)my.cnf 的信息如下

    [mysqld]
    basedir=/u01/applications/mysql-8.0.17-el7-x86_64/
    datadir=/u01/applications/mysql-8.0.17-el7-x86_64/data
    port=3306
    socket=/var/lib/mysql/mysql.sock
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    #skip-grant-tables
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
    # Settings user and group are ignored when systemd is used.
    # If you need to run mysqld under a different user or group,
    # customize your systemd unit file for mariadb according to the
    # instructions in http://fedoraproject.org/wiki/Systemd
    [mysqld_safe]
    log-error=/u01/applications/mysql-8.0.17-el7-x86_64/data/vlearn.log
    pid-file=/u01/applications/mysql-8.0.17-el7-x86_64/data/vlearn.pid
    
    #
    # include all files from the config directory
    #
    !includedir /etc/my.cnf.d

    [mysqld]
    basedir=/usr/local/mysql
    datadir=/usr/local/mysql/data
    port=3306
    socket=/tmp/mysql.sock
    pid-file=/usr/local/mysql/$hostname.pid //注意了,小细节,这里的 $hostname
    是linux的主机名。一般每个人主机名都是不一样的。
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

    其中/tmp/mysql.sock这个文件,但是在/tmp/目录下没有找到此文件:ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
    (9)为mysql配置环境变量。
    vim /etc/profile // 打开profile文件。

    export MYSQL_HOME

    MYSQL_HOME=/usr/local/mysql
    export PATH=$PATH:$MYSQL_HOME/lib:$MYSQL_HOME/bin

    环境变量最好加在用户的/home/mysql/.bash_profile下。

    export MYSQL_HOME
    MYSQL_HOME=/usr/local/mysql
    export PATH=$PATH:$MYSQL_HOME/lib:$MYSQL_HOME/bin

    (10) 设置为开机自启动项。
    依次执行一下代码。

    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 
    chmod +x /etc/init.d/mysql //添加可执行权限。
    chkconfig --add mysql // 注册启动服务
    输入chkconfig --list //查看是否添加成功。

    表示成功。
    (11)开启服务器,登录进入mysql。
    service mysql start //开启服务器。 mysql -uroot -p //登录进入mysql,然后提示输入密码。

    输入初始化过程中生成的临时密码,然后回车就行。进入一下页面。

    到此,说明已经安装成功了。
    (12)进入mysql后,修改密码。不然你什么也做不了。

    alter user 'root'@'localhost' identified by 'your_password';

    然后 exit; 退出,重新进入,进行测试。
    show databases;

    到此,关于安装mysql 8.0.15版本的全部过程就已经结束了!

    (13)

    可以设置 /etc/my.cnf在[mysqld]后面添加skip-grant-tables,重启服务后 使用下述方法改密码;

    update user set authentication_string='' where user='root';
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

    参考:

    Centos7下安装mysql8.0.15完整详细教程

    解决ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

    linux中mysql忘记root密码如何登陆

    MySQL 8忘记密码的最佳处理方式浅析

  • 相关阅读:
    「Python」pandas入门教程
    「Python」字符串操作内置函数
    「Python」10个python项目
    python-基础入门-序
    提取网站图片
    c#图片添加水印
    js获取url传递的参数
    构建之法阅读笔记01
    学习进度条<第一周>
    30道四则运算<1>
  • 原文地址:https://www.cnblogs.com/hoaprox/p/8044989.html
Copyright © 2011-2022 走看看