• Ubuntu 18.04 安装配置 MySQL 5.7


    Ubuntu 18.04 安装 mysql 的过程中,竟然没有让你输入秘密?!(之前在 Ubuntu 14.04 下,安装过程中会询问密码),这导致安装完 mysql 初始秘密不知道的问题。

    $ sudo apt-get install mysql-server-5.7

    解决方法如下:

    1)安装完成后,会生成文件 /etc/mysql/debian.cnf ,初始用户名和秘密如下 (这里密码是随机的)

    $ sudo cat /etc/mysql/debian.cnf 
    # Automatically generated for Debian scripts. DO NOT TOUCH!
    [client]
    host     = localhost
    user     = debian-sys-maint
    password = 63vIY3PtyKh10cmZ
    socket   = /var/run/mysqld/mysqld.sock
    [mysql_upgrade]
    host     = localhost
    user     = debian-sys-maint
    password = 63vIY3PtyKh10cmZ
    socket   = /var/run/mysqld/mysqld.sock

    2)使用这个用户名和秘密登陆 mysql

    $ mysql -h 127.0.0.1 -u debian-sys-maint -p
    Enter password: 
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 2
    Server version: 5.7.26-0ubuntu0.18.04.1 (Ubuntu)
    
    Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    mysql> 

    3)然后做如下操作(这里设置秘密为 1,读者请自行设置自己的密码)

    mysql> update mysql.user set authentication_string=password('1') where user='root' and host='localhost';
    Query OK, 1 row affected, 1 warning (0.00 sec)
    Rows matched: 1  Changed: 1  Warnings: 1
    
    mysql> update mysql.user set plugin='mysql_native_password';
    Query OK, 1 row affected (0.00 sec)
    Rows matched: 4  Changed: 1  Warnings: 0
    
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> quit;
    Bye

    4)重新启动 mysql

    $ sudo service mysql restart

    5)之后就可以使用 root 登陆了

    $ mysql -h 127.0.0.1 -u root -p
    Enter password: 
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 2
    Server version: 5.7.26-0ubuntu0.18.04.1 (Ubuntu)
    
    Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    mysql> 

    6)检查默认字符编码

    mysql> show variables like 'character_set_%';
    +--------------------------+----------------------------+
    | Variable_name            | Value                      |
    +--------------------------+----------------------------+
    | character_set_client     | utf8                       |
    | character_set_connection | utf8                       |
    | character_set_database   | latin1                     |
    | character_set_filesystem | binary                     |
    | character_set_results    | utf8                       |
    | character_set_server     | latin1                     |
    | character_set_system     | utf8                       |
    | character_sets_dir       | /usr/share/mysql/charsets/ |
    +--------------------------+----------------------------+
    8 rows in set (0.00 sec)

      将其改为 utf8,打开 /etc/mysql/mysql.conf.d/mysqld.cnf,在最后添加一句,

    character-set-server=utf8

      重新启动 mysql,

    $ sudo service mysql restart

      再次查看字符编码,

    mysql> show variables like 'character_set_%';
    +--------------------------+----------------------------+
    | Variable_name            | Value                      |
    +--------------------------+----------------------------+
    | character_set_client     | utf8                       |
    | character_set_connection | utf8                       |
    | character_set_database   | utf8                       |
    | character_set_filesystem | binary                     |
    | character_set_results    | utf8                       |
    | character_set_server     | utf8                       |
    | character_set_system     | utf8                       |
    | character_sets_dir       | /usr/share/mysql/charsets/ |
    +--------------------------+----------------------------+
    8 rows in set (0.01 sec)

    7)使用 mycli 自动补全

     默认 mysql 命令行登陆后,输入命令不会提示及自动补全,非常麻烦,通过使用 mycli 自动补全会方便很多。

    具体可参考:https://pypi.org/project/mycli/

    $ sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ mycli

    使用 mycli 启动数据库连接,

    $ mycli -h 127.0.0.1 -u root -p ******** ( here your DB password)

    8)  安装 mysql 的 python 接口 mysqlclient (Django 对此接口的支持比 mysql-connector-python 好)

    具体可参考:https://pypi.org/project/mysqlclient/

    $ sudo apt-get install default-libmysqlclient-dev   # (ubuntu 16.04 软件包名为 libmysqlclient-dev)
    $ sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ mysqlclient

    CentOS 7 下的安装方法:https://www.cnblogs.com/gaowengang/p/10744746.html

    本文参考网友博客:https://blog.csdn.net/qq_38737992/article/details/81090373

    (完)

  • 相关阅读:
    PWA渐进式增强WEB应用
    如何去掉wordpress头部<link rel='next' href='*/page/2' />
    wordpress修改邮箱提示There is a pending change of your email to
    使用WP-China-Yes让你的wordpress告别429错误
    Focus
    α_β_γ_δ_ε_ζ_η_θ_ι_κ_λ_μ_ν怎么读
    Ubuntu总结常用命令记录
    声明
    你所不知道的冰冷的经济真相(转自来自天涯大佬)
    杨振宁演讲谈这件事:我很高兴中国政府没有上当
  • 原文地址:https://www.cnblogs.com/gaowengang/p/10816537.html
Copyright © 2020-2023  润新知