配置云服务器的mysql连接,navicat测试远程连接

    科技2022-07-31  83

    检查一下云系统的更新 yum -y update 下载安装包

    rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

    安装mysql `

    yum install -y mysql-serve

    ` 设置开机启动mysql

    `systemctl enable mysql.service`

    检查是否加入开机自启动

    systemctl list-unit-files | grep mysqld

    查看mysql默认的密码,如何你找不到这个文件,可以看一下我另一篇博文

    grep 'temporary password' /var/log/mysqld.log

    登录mysql

    mysql -u root -p

    如何输入密码,这里的密码是不可见的,输入完直接回车就行

    修改密码

    SET PASSWORD = PASSWORD('123456');

    或者

    ALTER USER USER() IDENTIFIED BY '123456';

    如果

    sql服务器密码可能会过期,例如如下报错

    You must reset your password using ALTER USER statement before executing this statement

    可以采取一下策略 转到目录下

    cd /etc/

    使用vi编辑

    vi my.cnf

    转到vi的编辑模式,按i

    [mysqld] default_password_lifetime=0

    按住esc,再:wq存盘退出

    在命令行输入这行命令,使得所有主机都能访问到该ip下的数据库 用户名是root,密码是123456

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

    刷新一下权限

    Funsh privileges

    接下来可能会报错

    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; ERROR 1819 (HY000): Your password does not satisfy the current policy requiremen

    意思是数据库的密码不符合策略,其实是数据库密码的设置规则导致的。 这里需要降低数据库的规则

    set global validate_password_policy=0; set global validate_password_mixed_case_count=0; set global validate_password_number_count=3; set global validate_password_special_char_count=0; set global validate_password_length=3;

    最后查看策略

    SHOW VARIABLES LIKE 'validate_password%';

    除了设置mysql允许所有主机访问服务器,还需要对应的云服务器开启端口 mysql默认的端口是3306 使用navicat for mysql来测试一下是否能成功连接,远程登录成功!

    Processed: 0.010, SQL: 8