centos7 安装LNMP(php7)之mysql安装,更改密码,远程授权
1.执行命令 yum install mysql mysql-server mysql-devel -y
知道出现complete!则安装mysql完成
当执行
service mysqld restart的时候,出现报错
Redirecting to /bin/systemctl restart mysqld.service
Failed to restart mysqld.service: Unit not found.
出现这个原因,目前待解决,但是在网上找到了另外一种完全兼容mysql的MariaDB数据库
执行一下命令
# yum install mariadb-server -y
# systemctl start mariadb.service
# systemctl enable mariadb.service
# mysql
然后修改mysql密码:
MariaDB [(none)]> SHOW DATABASES; #查看数据库
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
MariaDB [(none)]> use mysql; #选择mysql数据库
Database changed
MariaDB [mysql]> update user set password=passworD("yourpassword") where user='root'; #修改数据库密码
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4 Changed: 4 Warnings: 0
MariaDB [mysql]> flush privileges;
MariaDB [mysql]> exit;
完成修改密码,
有时候我们需要使用naviate这样的工具来连接数据库,但是输入ip用户名和密码之后出现
这是因为没有授权的原因
1.修改mysql库的user表,将host项,从localhost改为%。%这里表示的是允许任意host访问,如果只允许某一个ip访问,则可改为相应的ip,比如可以将localhost改为192.168.1.123,这表示只允许局域网的192.168.1.123这个ip远程访问mysql。
update user set host = '%' where user = 'root';
会有ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'的报错提示,可以忽略。
如果需要授权,单个用户可以执行命令
1.grant all privileges
on
*.* to
'outUser'
@
'%'
identified
by
'password'
with grant option
2.flush privileges; //刷新权限缓存
再次用navicate就可以链接了