数据库安装请参考:http://youngbrick.iteye.com/blog/2335851
创建数据库:
MariaDB [mysql]> create database mydbtest default charset utf8 collate utf8_general_ci; Query OK, 1 row affected (0.01 sec)
查询数据库:
MariaDB [mysql]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | mydbtest | +--------------------+ 4 rows in set (0.00 sec)
创建mysql登录用户:
用户:brick
密码:brick!123
localhost:只允许本机访问
%:允许远程访问
MariaDB [mysql]> insert into mysql.user(Host,User,Password) values('localhost','brick','brick!123'); Query OK, 1 row affected, 4 warnings (0.01 sec)
mysql 5.7没有password 字段了,通过create 创建帐号
CREATE USER 'username'@'localhost' IDENTIFIED BY '123456';
查看创建的帐号:
MariaDB [(none)]> select user,host,password from mysql.user; +-------+-----------+-------------------------------------------+ | user | host | password | +-------+-----------+-------------------------------------------+ | root | localhost | *023D9E78C29EAF0470DC6CC2BCBFA87504FE06E1 | | root | 127.0.0.1 | *023D9E78C29EAF0470DC6CC2BCBFA87504FE06E1 | | root | ::1 | *023D9E78C29EAF0470DC6CC2BCBFA87504FE06E1 | | brick | localhost | brick!123 | +-------+-----------+-------------------------------------------+ 4 rows in set (0.00 sec)
发现密码错了,密码需要password(‘密码’)加密,修改一下:
MariaDB [(none)]> update mysql.user set password=password('brick!123') where user='brick'; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0
确认一下,再看一眼:
MariaDB [(none)]> select user,host,password from mysql.user; +-------+-----------+-------------------------------------------+ | user | host | password | +-------+-----------+-------------------------------------------+ | root | localhost | *023D9E78C29EAF0470DC6CC2BCBFA87504FE06E1 | | root | 127.0.0.1 | *023D9E78C29EAF0470DC6CC2BCBFA87504FE06E1 | | root | ::1 | *023D9E78C29EAF0470DC6CC2BCBFA87504FE06E1 | | brick | localhost | *CEDA60EA702EFCE18A1B31CE4EB823FF363B8085 | +-------+-----------+-------------------------------------------+ 4 rows in set (0.00 sec)
授权,mydbtest所有权限授予brick帐号:
刚上面修改了mysql.user表,flush privileges一下:
MariaDB [mysql]> flush privileges; Query OK, 0 rows affected (0.00 sec)
如果不执行上面的命令,授权时会出现这个错误:
MariaDB [mysql]> grant all privileges on mydbtest.* to brick@localhost; ERROR 1133 (42000): Can't find any matching row in the user table
flush privileges执行完后,再执行grant授权。(mydbtest.*)mydbtest数据库的所有权限授予brick
MariaDB [(none)]> grant all privileges on mydbtest.* to brick@localhost; Query OK, 0 rows affected (0.00 sec) 授权权限后也需要flush privileges;否则帐号没有权限登录,权限没有持久化到数据库中。
MariaDB [(none)]> flush privileges; Query OK, 0 rows affected (0.00 sec)
退出mysql:
MariaDB [mysql]> exit Bye
重新登录mysql:
[root@localhost ~]# mysql -ubrick -p Enter password: (输入密码) Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 13 Server version: 5.5.50-MariaDB MariaDB Server Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mydbtest | +--------------------+ 2 rows in set (0.00 sec) MariaDB [(none)]>
查看当前用户的权限:
MariaDB [(none)]> show grants; +--------------------------------------------------------------------------------------------------------------+ | Grants for brick@localhost | +--------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'brick'@'localhost' IDENTIFIED BY PASSWORD '*CEDA60EA702EFCE18A1B31CE4EB823FF363B8085' | | GRANT ALL PRIVILEGES ON `mydbtest`.* TO 'brick'@'localhost' | +--------------------------------------------------------------------------------------------------------------+ 2 rows in set (0.00 sec)
=======================命令备注==========================
授权grant xxxx to xxx:
MariaDB [(none)]> grant all privileges on mydbtest.* to brick@localhost;
删除权限revoke xxx from xxx:跟授权很像,grant换成revoke,to换成from
MariaDB [(none)]> revoke all privileges on mydbtest.* from brick@localhost;
查看用户权限:show grants for xxxx@xxxx
MariaDB [(none)]> SHOW GRANTS FOR 'brick'@'localhost'; +--------------------------------------------------------------------------------------------------------------+ | Grants for brick@localhost | +--------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'brick'@'localhost' IDENTIFIED BY PASSWORD '*CEDA60EA702EFCE18A1B31CE4EB823FF363B8085' | +--------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec)
更详细的授权命令写法:
https://www.techonthenet.com/mariadb/grant_revoke.php
数据导入:
将xx.sql文件放到/usr/local目录
登录mysql进入命令行
msyqlxx>use mydb; mysqxx>source /usr/local/xx.sql;
相关推荐
在探讨“mysql远程访问授权”这一主题时,我们首先需要理解MySQL作为一种广泛使用的开源关系型数据库管理系统,如何通过网络提供服务,以及如何安全地管理远程访问权限。远程访问授权是MySQL服务器安全策略的重要...
在MySQL中,我们使用`GRANT`语句来创建账号并赋予相应的权限。例如,创建一个名为`yangxin`的用户,并授予所有权限,允许其从任何主机 `%` 登录,密码为`yangxin123456`,可以这样操作: ``` GRANT ALL ...
本文将深入探讨如何在MySQL中新建用户、授权、删除用户以及修改密码的过程与细节,旨在为数据库管理员提供实用的操作指南。 ### MySQL新建用户 新建用户是数据库管理中最基础的操作之一。在MySQL中,这一过程可以...
mysql -u root mysql命令用于连接mysql服务器,并修改账号连接权限。update user set host = '%' where user = 'root'命令用于将root用户的连接权限设置为任何主机,而flush privileges命令用于刷新mysql的权限系统...
MySQL是世界上最流行的开源关系型数据库管理系统之一,管理MySQL的一个重要方面是用户账户的创建、授权、权限管理和删除。本文将详细讲解如何在MySQL中进行这些操作。 首先,我们来看用户创建。MySQL允许管理员通过...
我们可以使用 PHPMyAdmin 创建数据库、创建账号、设置权限等。 知识点6: 数据库安全 数据库安全是指保护数据库免受未经授权的访问、使用、泄露或破坏的安全措施。我们可以通过创建独立数据库账号、设置访问权限、...
此外,创建专用的数据库用户账号,而不是使用管理员账号进行常规操作,也是最佳实践之一。 综上所述,MySQL 数据库授权是数据库管理的关键组成部分,正确配置和管理权限对于维护数据安全至关重要。理解并熟练运用 ...
总结,设置MySQL指定IP远程访问连接涉及权限授权、防火墙配置以及安全策略的调整。通过遵循上述步骤并确保安全性,你可以让指定的IP地址访问远程MySQL数据库,从而实现更灵活的数据库管理与协作。
- 用户权限:MySQL有严格的用户权限管理,root用户拥有所有权限,但为了安全,建议为日常操作创建单独的普通用户,并限制其权限。 - 密码策略:设置强密码,定期更换,防止未授权访问。 5. **连接和管理**: - ...
粗放目录并授权 3、安装步骤 4、添加配置文件,启动服务 三、主从复制配置 1、在主库上准备复制账号 2、查看主库的二进制文件和位置 3、切换到从库并执行以下连接语句 四、测试 1、在主数据库上创建数据库和表并添加...
本文将详细讲解在RHEL 5(64位英文版)上安装MySQL的过程,以及如何配置端口,创建用户,授权,管理数据库和表,以及修改用户密码等操作。 首先,安装MySQL可以通过下载RPM安装包进行。在终端中,你可以使用`yum ...
- 登录MySQL并执行以下命令,以授予指定用户(例如`root`)从任意主机(`%`表示所有主机)连接的权限,并且可以使用指定密码(例如`123456`)进行认证。 ```sql GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' ...
公司有数百台 MySQL 实例,如果手动登入来创建账号很麻烦,也不现实。所以,我们写了一个简单的shell脚本,用来创建批量服务器的mysql 账号。 2.执行脚本内容; #!/bin/bash ## 此段shell 脚本的主要功能是实现在...
- 保持MySQL服务器的更新,及时修补安全漏洞,避免未授权访问。 - 监控MySQL性能,例如通过SHOW STATUS和SHOW VARIABLES命令查看服务器状态,分析慢查询日志优化SQL。 5. **社区支持**: - MySQL拥有庞大的...
1. **登录MySQL**:使用具有管理员权限的账号登录MySQL。 2. **插入新用户**:使用SQL语句 `INSERT INTO mysql.user (Host, User, Password) VALUES ('localhost', 'username', PASSWORD('password'));` 来创建新...
3. **创建并编辑`my.ini`文件**: - 在解压后的目录中找到`my-default.ini`文件,并将其复制重命名为`my.ini`。 - 使用文本编辑器打开`my.ini`文件,在其中添加以下内容: ```ini [client] default-character-...