zoukankan      html  css  js  c++  java
  • Linux文档整理之【Mysql安装与配置】

    最近公司让整理一个Linux安装Mysql的文档。所以就整理了一下,这里将自己整理的详细文档做个笔记。

    1、下载Mysql。

    https://dev.mysql.com/downloads/mysql/5.6.html#downloads

     

    我这里选择安装的版本是5.7.26

    选择一个安装包进行下载

    https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

    使用下载命令直接下载,或者自己下载后上传到服务器。

    wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

    2、解压安装包

    tar –zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

    3、复制文件到安装目录

    复制文件到 /usr/local/mysql (一般情况都是复制这个目录当然也可以自定义)

    cp -r mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/mysql

    4、添加mysql用户组和用户及修改对应权限

    groupadd mysql

    useradd -g mysql mysql

    更改/usr/local/mysql 文件夹所有者属性和对应权限

    chown -R mysql:mysql  /usr/local/mysql/

    chown -R mysql  /usr/local/mysql/

    chmod -R 755 /usr/local/mysql/

    5、安装libaio 依赖包 如果已安装则跳过

    yum install libaio   (我用的是centos所以安装是用yum)

    6、初始化安装

    在当前目录(/usr/local/mysql/)创建一个data目录 用于存放数据库数据文件 (这个位置可以自定义)

    mkdir data

    注意修改data目录权限

    chown -R mysql:mysql  /usr/local/mysql/data

    chown -R mysql  /usr/local/mysql/data

    chmod -R 755 /usr/local/mysql/data

    初始化安装命令

    bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize

    mysqld 在数据库软件目录的bin下面;我当前在/usr/local/mysql根目录所以执行mysqld时前面要加上bin目录。

    basedir:数据库软件根目录,即解压后复制到的地方

    datadir:数据库数据存储目录,这个就是前面mkdir data前面建立的

    记住最后几个字符生成的临时数据库登录密码记住是冒号后面的都是密码(如下图)

    如果出现:initialize specified but the data directory has files in it. Aborting错误,请将data目录下的所有文件都删除,再进行初始化安装命令。

    7、修改配置文件

    修改datadir、basedir等对应的目录。

    配置文件里所有配置的文件位置必须真实存在,不存在的需要手动创建;并且赋予对应的文件权限。

    vim /etc/my.cnf

    8、创建日志文件并赋予对应权限

    var/log/mariadb/mariadb.log  这里必须要将mariadb.log文件创建好才行。

    创建文件(我是已经在var/log/mariadb目录下了)

    创建文件

    touch mariadb.log

    设置日志文件所有者为mysql和对应权限

    chown -R mysql:mysql /var/log/mariadb/

    chown -R mysql /var/log/mariadb/

    chmod -R 755 /var/log/mariadb/

    9、将mysql加入服务并设置开机自启动

    加入服务

    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

    开机启动

    chkconfig mysql on

    10、启动Mysql服务并连接数据库

    service mysql start

     

    看到 Starting MySQL. SUCCESS! 代表启动成功。至此安装启动完成。

    连接数据库 使用临时密码登录

    mysql -u root –p

    登录后如果输入任何mysql 命令都是提示:You must reset your password using ALTER USER statement before executing this statement.

    如下图错误提示

     

    如果是这种情况就需要强制修改用户口令。

    alter user user() identified by "123456";  (此命令是在登录mysql后执行)

    11、修改允许远程连接

    允许远程连接例如Navicat 等客户端登录。

    以下命令都是在登录mysql成功后执行

    update user set host='%' where user = 'root';

    使修改的权限立即生效。

    flush privileges;

    注意,在真实的生产环境中,并不建议这么修改,因为安全风险太大。建议根据实际情况将root用户的host项修改为某个指定的ip地址,或仍然保持localhost。

    接下来就可以使用客户端连接了。

    使用客户端连接注意要开启防火墙3306端口才行,如果是买的云服务器则需要在云服务器安全设置页面添加对应的进出端口。

    如果在使用 Navicat连接后出现:Client does not support authentication protocol requested by server...

    原因是由于navicat版本的问题,出现连接失败的原因:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password

    解决办法要么升级自己的Navicat版本,要么修改mysql的加密规则

    修改mysql加密规则办法如下

    先在服务器登录mysql。

    注意下面语句中"root@%"这里是指root用户,%是host,代表任意主机。可以根据自己实际情况来修改。

    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

    flush privileges;

    使修改的权限立即生效。

     

     

  • 相关阅读:
    Linux mint下firefox安装flashplayer
    Linux mint下安装iNode遇到的几个问题
    FireFox浏览器访问ip6域名的问题
    用牛顿迭代法和二分法求方程的根
    VC6工程向导制作
    配置多个版本的python的系统环境变量
    C语言习题解答:求某一天为一年中的第几天
    使用Python求解水仙花问题
    Python语言中round函数的一个疑惑
    Linux下安卓手机管理软件QtADB的使用
  • 原文地址:https://www.cnblogs.com/rui1236/p/11095789.html
Copyright © 2011-2022 走看看