• Linux-->Mysql:安装,测试


    环境准备

    1. mysql下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
    2. Linux系统版本:centos 7

    安装步骤

    https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html

    shell> groupadd mysql
    shell> useradd -r -g mysql -s /bin/false mysql
    shell> cd /usr/local
    shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
    shell> ln -s full-path-to-mysql-VERSION-OS mysql
    shell> cd mysql
    shell> mkdir mysql-files
    shell> chmod 750 mysql-files
    shell> chown -R mysql .
    shell> chgrp -R mysql .
    shell> bin/mysql_install_db --user=mysql    # MySQL 5.7.5
    shell> bin/mysqld --initialize --user=mysql # MySQL 5.7.6 and up
    shell> bin/mysql_ssl_rsa_setup              # MySQL 5.7.6 and up
    shell> chown -R root .
    shell> chown -R mysql data mysql-files
    shell> bin/mysqld_safe --user=mysql &
    # Next command is optional
    shell> cp support-files/mysql.server /etc/init.d/mysqld
    shell> service mysqld start
    

    测试服务器是否安装成功

    到这步服务也起来了。。但是有个问题就是,我没有设置密码和用户啊。这测试服务器可怎么整?

    通过启动bin/mysql_safe 来启动并修改密码

    1.停掉mysql服务器

    [root@DB-Server init.d]# /etc/rc.d/init.d/mysql stop
    Shutting down MySQL..[ OK ]
    

    2.启动mysqld_safe 指定 --skip-grant-tables

    [root@DB-Server init.d]# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
    

    3.登录mysql服务器

    [root@DB-Server bin]# ./mysql -u[你的用户名] -p[你的密码]
    

    4.修改mysql root密码

    shell>use mysql;
    shell>update user set password=PASSWORD('[你的新密码]') where user='root' and host='root' or host='localhost';
    shell>flush privileges;

    5.7以后用这种方式修改:
    shell>update user set authentication_string=password('123456') where user='root';
    mysql5.7更改密码应该采用命令ALTER USER 'root'@'localhost'IDENTIFIED BY '********'其中密码的命名规则有所改变:
    MySQL 设置的密码中必须至少包含一个大写字母、一个小写字母、一个特殊符号、一个数字,密码长度至少为8个字符 

    5.设置mysql可以远程访问

    shell>user mysql;
    shell>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '[你的root密码]' WITH GRANT OPTION;
    shell>flush privileges;
    

    6.mysql数据库用户密码已修改,现在重新关闭mysqld服务器,然后重新连接下,服务已经正式启动了,接下来运行一下测试shell命令,看看服务器是否运行正常。

    - 使用mysqladmin验证服务器是否正在运行。

    shell> bin/mysqladmin version
    shell> bin/mysqladmin variables
    

    如果无法连接到服务器,请指定-u root选项以root身份连接。如果您已经为root帐户分配了密码,则还需要在命令行中指定-p,并在出现提示时输入密码。例如:

    shell> bin/mysqladmin -u root -p version
            Enter password: (enter root password here)
    

    根据您的平台和MySQL版本,mysqladmin版本的输出略有不同,但应与之类似:

    shell> bin/mysqladmin version
            mysqladmin  Ver 14.12 Distrib 5.7.20, for pc-linux-gnu on i686
            ...
    
            Server version          5.7.20
            Protocol version        10
            Connection              Localhost via UNIX socket
            UNIX socket             /var/lib/mysql/mysql.sock
            Uptime:                 14 days 5 hours 5 min 21 sec
    
            Threads: 1  Questions: 366  Slow queries: 0
            Opens: 0  Flush tables: 1  Open tables: 19
            Queries per second avg: 0.000
    

    要查看还有什么可以使用mysqladmin,请使用--help选项调用它。

    验证关闭服务器

    验证您是否可以关闭服务器(如果root帐户已经有密码,则包括-p选项)

    shell> bin/mysqladmin -u root shutdown
    

    验证重新开启服务器

    验证您是否可以重新启动服务器。通过使用mysqld_safe或直接调用mysqld来执行此操作。例如:

    shell> bin/mysqld_safe --user=mysql &
    

    如果开启失败,请查阅:失败原因

    查看存在的数据库

    已安装数据库的列表可能有所不同,但始终包含最小的mysql和information_schema.

    shell> bin/mysqlshow
            +--------------------+
            |     Databases      |
            +--------------------+
            | information_schema |
            | mysql              |
            | performance_schema |
            | sys                |
            +--------------------+
    

    如果指定数据库名称,mysqlshow将显示数据库中的表的列表:

    shell> bin/mysqlshow mysql
    Database: mysql
    +---------------------------+
    |          Tables           |
    +---------------------------+
    | columns_priv              |
    | db                        |
    | engine_cost               |
    | event                     |
    | func                      |
    | general_log               |
    | gtid_executed             |
    | help_category             |
    | help_keyword              |
    | help_relation             |
    | help_topic                |
    | innodb_index_stats        |
    | innodb_table_stats        |
    | ndb_binlog_index          |
    | plugin                    |
    | proc                      |
    | procs_priv                |
    | proxies_priv              |
    | server_cost               |
    | servers                   |
    | slave_master_info         |
    | slave_relay_log_info      |
    | slave_worker_info         |
    | slow_log                  |
    | tables_priv               |
    | time_zone                 |
    | time_zone_leap_second     |
    | time_zone_name            |
    | time_zone_transition      |
    | time_zone_transition_type |
    | user                      |
    +---------------------------+
    

    执行sql命令

    shell> bin/mysql -e "SELECT User, Host, plugin FROM mysql.user" mysql
    +------+-----------+-----------------------+
    | User | Host      | plugin                |
    +------+-----------+-----------------------+
    | root | localhost | mysql_native_password |
    +------+-----------+-----------------------+
    

    mysql - MySQL命令行工具,

    mysqladmin - 用于管理MySQL服务器的客户端

    mysqlshow - 显示数据库,表和列信息。

    Mysql设置开机自动启动

  • 相关阅读:
    Twitter OA prepare: Rational Sum
    Java: Best Way to read a file
    Summary: gcd最大公约数、lcm最小公倍数算法
    Twitter OA prepare: Flipping a bit
    Twitter OA prepare: Equilibrium index of an array
    echo -e 参数
    openwrt 添加luci选项
    基于TLS的EAP 认证方法
    linux命令 dirname
    freeradius 错误: error:140890C7:SSL routines:ssl3_get_client_certificate:peer did not return a certificate
  • 原文地址:https://www.cnblogs.com/taomylife/p/7263503.html
Copyright © 2020-2023  润新知