美文网首页
Linux centOS 下安装Mysql数据库(基本流程无错版

Linux centOS 下安装Mysql数据库(基本流程无错版

作者: iOS_PM_WEB_尛鹏 | 来源:发表于2019-05-31 15:33 被阅读0次

    【作者前言】:13年入圈,分享些本人工作中遇到的点点滴滴那些事儿,17年刚开始写博客,高手勿喷!以分享交流为主,欢迎各路豪杰点评改进!

    1.应用场景:

    搭建服务端应用的最原始一步,场景数不胜数,不多说;
    文中操作环境:Mac系统操作,CentOS下安装;

    2.实现目标:

    从0到1使用Mac系统操作,能够在Linux操作系统中完美的搭建起mysql服务,并且能够正常的运转起来。

    • 数据库安全等进阶操作,本篇不会涉及,仅仅是对自己不断踩坑后的一个总结篇,不需要以后用到时在去各种查阅水贴...

    3.流程说明:

    1、下载Mysql数据库,这里去官网自己去下载对应系统下的支持版本,假设下载的版本为mysql-5.6.22-linux-glibc2.5-x86_64.tar.gz,后续流程用这个版本来做演示。
    2、将本地文件上传到Linux服务器系统目录下

    这里提醒一下:尽量直接安装在/usr/local 目录中,这样在后面的my.cnf环境配置中就可以直接复制粘贴了~~~

    终端输入命令:scp (括号内的内容都是注释,真正情况下不需要)
    scp /mysql-5.6.22-linux-glibc2.5-x86_64.tar.gz(本地文件路径) root@服务器IP地址:/usr/local(服务器文件路径)

    3、链接Linux服务器,进行后续的操作

    终端输入命令:ssh
    ssh root@服务器IP地址 (回车Enter)
    输入链接服务器的密码: (回车Enter)
    链接OK;

    /** 雷区:在服务器重装系统或者重启后,如果之前你链接过服务器,可能会出现如下报错:
        hostkey verification failed
        原因:历史中hostkey已经过期了,更新下即可
    */
    //终端输入命令行:
    ssh-keygen -R 服务器IP地址  (回车Enter)
    
    //再如上 继续用ssh命令链接即OK.
    
    4.前往第1步上传的对应路径下,执行一系列操作

    解压:

    4.1 终端依次输入命令行
    cd /usr/local/ (回车Enter 前往服务器的路径下)
    tar -zxvf mysql-5.6.22-linux-glibc2.5-x86_64.tar.gz (回车Enter)
    mv mysql-5.6.22-linux-glibc2.5-x86_64 mysql (回车Enter,非必须的操作,这里是给解压完成后的文件夹重命名,避免太长后面操作和配置环境时很别扭~~~)
    rm mysql-5.6.22-linux-glibc2.5-x86_64.tar.gz (回车Enter,非必须)

    4.2 创建用户组用户名:
    groupadd mysql (回车Enter)
    useradd -r -g mysql mysql (回车Enter)

    5、进入到mysql目录,执行添加MySQL配置的操作(二选一)

    cd /usr/local/mysql (回车Enter)
    cp support-files/my-default.cnf /etc/my.cnf
    (提醒一下!例子中数据库版本是my-default.cnf,有些版本为my-medium.cnf,So本步中命令行二选一即可)
    cp support-files/my-medium.cnf /etc/my.cnf

    6、编辑/etc/my.cnf文件

    终端输入命令行
    vi /etc/my.cnf (回车Enter)

    # For advice on how to change settings please see
    # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
    # *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
    # *** default location during install, and will be replaced if you
    # *** upgrade to a newer version of MySQL.
    
    [mysqld]
    
    # Remove leading # and set to the amount of RAM for the most important data
    # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
    # innodb_buffer_pool_size = 128M
    
    # Remove leading # to turn on a very important data integrity option: logging
    # changes to the binary log between backups.
    # log_bin
    
    # These are commonly set, remove the # and set as required.
    basedir = /usr/local/mysql/
    datadir = /usr/local/mysql/data
    port = 3306
    # server_id = .....
    socket = /tmp/mysql.sock
    character-set-server = utf8
    skip-name-resolve
    log-err = /usr/local/mysql/data/error.log
    pid-file = /usr/local/mysql/data/mysql.pid
    
    # Remove leading # to set options mainly useful for reporting servers.
    # The server defaults are faster for transactions and fast SELECTs.
    # Adjust sizes as needed, experiment to find the optimal values.
    # join_buffer_size = 128M
    # sort_buffer_size = 2M
    # read_rnd_buffer_size = 2M
    
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
    

    如果是完全按照本文所述流程的话,可直接复制内容,代替

    7、在mysql当前目录下设定目录的访问权限(注意后面的小点,表示当前目录)

    终端输入命令行:
    cd /usr/local/mysql (回车Enter 非必须,如当前就在mysql目录下,则可忽略)
    chown -R mysql . (回车Enter)
    chgrp -R mysql . (回车Enter)
    scripts/mysql_install_db --user=mysql (回车Enter,本步报错???莫慌,如果报错的话,执行以下命令:yum -y install autoconf,完成后继续执行本步~)
    chown -R root . (回车Enter)
    chown -R mysql data (回车Enter)

    8、初始化数据

    (在mysql/bin或者mysql/scripts下有个 mysql_install_db 可执行文件初始化数据库),进入mysql/bin或者mysql/scripts目录下,终端输入以下命令:
    ./mysql_install_db --verbose --user=root --defaults-file=/etc/my.cnf --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql --pid-file=/usr/local/mysql/data/mysql.pid --tmpdir=/tmp (回车Enter)

    9、启动mysql

    进入/usr/local/mysql/bin目录,终端输入以下命令:
    cd /usr/local/mysql/bin (回车Enter 非必须,只要进入到该目录即可)
    ./mysqld_safe --defaults-file=/etc/my.cnf --socket=/tmp/mysql.sock --user=root & (回车Enter)

    注意,如果执行命令后,光标停留在屏幕上,表示启动成功,需要我们先关闭shell窗口,再开启一个新的shell窗口,不要执行退出操作。如果出现 mysql ended这样的语句,表示Mysql没有正常启动,你可以到log中查找问题.

    10、设置开机启动

    新开启shell中断后,进入mysql目录,执行下面命令 :(越过了启动服务的步骤,感觉这样更直接一些)
    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld (回车Enter)
    cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysql (回车Enter)
    chmod 700 /etc/init.d/mysql (回车Enter)
    chkconfig --add mysqld (回车Enter)
    chkconfig --level 2345 mysqld on (回车Enter)
    chown mysql:mysql -R /usr/local/mysql/ (回车Enter)

    接近尾声...重启Linux服务器

    终端输入命令:
    reboot (回车Enter)

    等待...也可以直接ping 服务器IP地址,查看重启的进度,重启后在利用ssh命令链接Linux服务器

    链接后,查看mysql服务状态,输入命令行
    service mysqld status

    SUCCESS! MySQL running (3481)
    
    11、添加远程访问权限

    11.1 添加mysql命令
    ln -s /usr/local/mysql/bin/mysql /usr/bin (回车Enter)
    11.2 更改访问权限
    登录mysql,执行下面命令
    mysql -uroot -p (回车Enter)
    密码为空直接回车,进入mysql,运行以下两条命令
    GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '用户密码' with grant option;(回车Enter 注意分号!!!)
    Flush privileges;(回车Enter,注意分号~~~!!!)
    11.3 退出mysql
    exit

    真正的尾声:

    重启服务器-完毕
    reboot (回车Enter)

    补充部分 (别紧张,与主体流程无关!~)

    /**
    1、本机访问mysql,root账户默认是没有密码的,
    端口号默认3306,如果需要修改root账户密码,
    在/usr/local/mysql/bin目录下,执行下面命令
    */
    cd /usr/local/mysql/bin  //(回车Enter,非必须,你懂得)
    
    ./mysqladmin -h 127.0.0.1 -P3306 -u root password '密码' exit
    
    

    相关文章

      网友评论

          本文标题:Linux centOS 下安装Mysql数据库(基本流程无错版

          本文链接:https://www.haomeiwen.com/subject/nrfwtctx.html