CentOS7 安装mysql

资料来自:https://www.cnblogs.com/starof/p/4680083.html

wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

rpm -ivh mysql-community-release-el7-5.noarch.rpm

yum install mysql-community-server

安装成功后启mysql服务

systemctl enable mysqld.service

systemctl start  mysqld.service

初次安装mysql,root账户没有密码

mysql -u root

mysql> show databases;

+--------------------+

| Database          |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

| test              |

+--------------------+

4 rows in set (0.01 sec)

设置密码

mysql> set password for 'root'@'localhost' =password('password');

Query OK, 0 rows affected (0.00 sec)

mysql>

远程连接设置

把在所有数据库的所有表的所有权限赋值给位于所有IP地址的root用户。

mysql> grant all privileges on *.* to root@'%'identified by 'password';

如果是新用户而不是root,则要先新建用户

mysql>create user 'username'@'%' identified by 'password';

此时就可以进行远程连接了。

编码

mysql配置文件为/etc/my.cnf

最后加上编码配置

[mysql]

default-character-set =utf8

这里的字符编码必须和/usr/share/mysql/charsets/Index.xml中一致。

排查错误:

[root@localhost ~]# mysql -u root

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

在/etc/my.cnt文件的[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程

直接输入mysql进入

接下来就是用sql来修改root的密码

mysql> use mysql;

mysql> update user set password=password("你的新密码") where user="root";

mysql> flush privileges;

mysql> quit

到这里root账户就已经重置成新的密码了。

5.编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。大功告成!

重新进入mysql

mysql -u root -p

提示输入密码

Enter password:

此时输入密码,进入 mysql>

此时执行命令,还是会报错:ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

重新执行一次设置命令:

set password for 'root'@'localhost' =password('12345678');

此后再执行命令就正常了。

你可能感兴趣的:(CentOS7 安装mysql)