• 服务器配置Java开发环境(三)之安装mysql


    下载地址

    MySQL :: Download MySQL Community Server (Archived Versions)

    解压

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

    再移动并重命名一下

    mv mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/mysql

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

    1. groupadd mysql
    2. useradd -r -g mysql mysql

    创建数据目录并赋予权限

    1. mkdir -p /data/mysql #创建目录
    2. chown mysql:mysql -R /data/mysql #赋予权限

    配置my.cnf

    vim /etc/my.cnf

    内容如下

    1. [mysqld]
    2. bind-address=0.0.0.0
    3. port=3306
    4. user=mysql
    5. basedir=/usr/local/mysql
    6. datadir=/data/mysql
    7. socket=/tmp/mysql.sock
    8. log-error=/data/mysql/mysql.err
    9. pid-file=/data/mysql/mysql.pid
    10. #character config
    11. character_set_server=utf8mb4
    12. symbolic-links=0
    13. explicit_defaults_for_timestamp=true
    14. #0:大小写敏感;1:大小写不敏感
    15. lower_case_table_names=1

    初始化数据库
    进入mysql的bin目录

    cd /usr/local/mysql/bin/

    初始化

    ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

    这一步可能会有一个错误需要注意

    在centos 7.0 系统上安装 mysql 5.7.19的数据库,使用的是官网上编译好的安装包mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz,下载解压后,就可以使用需要安装。

    但是解压后运行数据库初始化时出现了报错:

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

    运行该命令后出现的报错如下:

    error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

    出现该问题首先检查该链接库文件有没有安装使用 命令进行核查

    rpm -qa|grep libaio

    运行该命令后发现系统中无该链接库文件

    使用命令,
    yum install libaio-devel.x86_64

    安装成功后,继续运行数据库的初始化命令,提示成功。

    查看密码

    cat /data/mysql/mysql.err

    启动mysql,并更改root 密码

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

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

    启动!!!

    1. service mysql start
    2. ps -ef|grep mysql

    到这里说明mysql已经安装成功了!!

    注意:如果你安装的不是上面的位置去找这个文件,进去编辑

    vim /etc/init.d/mysql

    修改这里

    下面修改密码

    首先登录mysql,前面的那个是随机生成的。

    ./mysql -u root -p   #bin目录下

     要是进不去报:

     修改 /etc/my.cnf 文件

    vim /etc/my.cnf

    加入信息

    [mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程

    保存并退出    :wq

    2、重启Mysql服务

     service mysql restart
    

     重启之后输入 mysql  进入 mysql

     重置密码

    在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string

    1. update user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root';
    2.   mysql> use mysql;
    3.   mysql> update user set password=password("你的新密码") where user="root";
    4.   mysql> flush privileges;
    5.   mysql> quit;

     远程连接:

    linux下mysql开启远程访问权限及防火墙开放3306端口

    1、登陆mysql

    mysql -u root -p

    2、设置访问地址

    1. #访问mysql库
    2. use mysql
    3. #使root能再任何host访问
    4. update user set host = '%' where user = 'root';

    如果你想允许用户root从ip为192.168.1.123的主机连接到mysql服务器,并使用root作为密码

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.123'IDENTIFIED BY 'password' WITH GRANT OPTION;  

    3、刷新

    flush privileges;

    防火墙开启

    1、开启端口3306

    firewall-cmd --zone=public --add-port=3306/tcp --permanent

    2、重启防火墙

    firewall-cmd --reload

    查看已经开放的端口:

    firewall-cmd --list-ports

    MySQL设置开机自启

    1. [root@wangpeng /]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
    2. [root@wangpeng /]# chmod +x /etc/init.d/mysqld
    3. [root@wangpeng /]# chkconfig --add mysqld

  • 相关阅读:
    oslo_rootwrap学习小结
    92. 递归实现指数型枚举
    如何订购 ELEMENTOR PRO
    struct sockaddr 和 struct sockaddr_in等价
    数学建模笔记-第三讲-插值
    CSS 之 display属性详解
    竞赛选题 深度学习 opencv python 实现中国交通标志识别_1
    SAP UI5 应用中 MockServer 的实例化方法
    注解与反射
    c# 异步进阶————channel [一]
  • 原文地址:https://blog.csdn.net/weixin_53998054/article/details/126019540