• [问题][manjaro][MariaDB]启动MariaDB后,无法远程访问,报错信息:'unconnected' user: 'unauthenticated'


    1、背景:

    启动MariaDB服务,通过python远程访问数据库失败,查询MariaDB日志(systemctl status mariadb)报错信息为:

    user: 'unauthenticated' host: '192.168.1.8' (This connection closed normally without authentication)

    2、原因:

    Mysql为了安全性,在默认情况下用户只允许在本地登录,关闭了远程登录权限

    3、解决办法:

    两个步骤:

    (1)登录mysql

    mysql -u sjm -p

    (2)允许用户在任何地方进行远程登录,并具有所有库任何操作权限

    GRANT ALL PRIVILEGES ON *.* TO 'sjm'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

    (3)查询用户及host:select user,host from mysql.user;

    附:

    1、python验证连接数据库代码

     1 import pymysql
     2 
     3 # 打开数据库连接
     4 db = pymysql.connect(
     5     host="192.168.1.14",
     6     user="sjm",
     7     password="123456",
     8     database="sjm_db",
     9     port=3306
    10 )
    11 
    12 # 使用 cursor() 方法创建一个游标对象 cursor
    13 cursor = db.cursor()
    14 
    15 # 使用 execute()  方法执行 SQL 查询
    16 cursor.execute("SELECT VERSION()")
    17 
    18 # 使用 fetchone() 方法获取单条数据.
    19 data = cursor.fetchone()
    20 
    21 print("Database version : %s " % data)
    22 
    23 # 关闭数据库连接
    24 db.close()

    参考:

    https://blog.csdn.net/zhengnz/article/details/6308773

  • 相关阅读:
    linux命令(48):nl命令
    linux命令(47):rmdir命令
    linux命令(46):chgrp命令
    linux命令(45):diff命令
    linux命令(44):date命令
    linux命令(43):cal命令
    linux命令(42):wc命令
    linux命令(41):watch命令
    linux命令(40):at命令
    linux下禁止root远程登录
  • 原文地址:https://www.cnblogs.com/shijianming/p/14400896.html
Copyright © 2020-2023  润新知