centos安装mysql

一、下载mysql yum包
官方下载地址:https://dev.mysql.com/downloads/repo/yum/
wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
二、安装软件源
rpm -Uvh https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
三、安装mysql
yum install mysql-community-server
四、启动&配置

启动

service mysqld start

查看运行状态

service mysqld status

看到绿色的running代表已经启动成功,然后mysql在5.6之后的版本都会默认生成一个默认密码,是root用户的。通过如下命令查看密码
grep 'temporary password' /var/log/mysqld.log
六、创建用户和分配权限
由于mysql8新提供了一种密码加密方式caching-sha2-password,且为默认,目前很多客户端都不支持,所以我们在创建新角色用户的时候可以指定其为mysql_native_password,原来的root账户等不去做任何改变(无形之中增加了安全性有木有)

创建一个test用户(一般情况下root用户只在本地环境下使用),密码是29dIg;2^,数据库的密码最好设置得连自己都记不住。

CREATE USER 'test'@'%' IDENTIFIED WITH mysql_native_password BY '29dIg;2^';

授权数据库给用户,并设置所有ip都可以远程连接

如果只授予用户某些数据库的话就把.改成 数据库名称.* 意思就是 数据库.表

如果只授予用户某些权限的话,比如只能读不能写,就把GRANT ALL改成GRANT SELECT

GRANT ALL ON . TO 'test'@'%';

当然,你也可以撤销授权,用法和授权几乎都是一样的。

REVOKE ALL ON . from 'test'@'%';

最后使设置立即生效
flush privileges

shell> mysql -uroot -p
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';
或者
mysql> set password for 'root'@'localhost'=password('MyNewPass4!');

6、添加远程登录用户

默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,我添加一个新的帐户:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'yangxin'@'%' IDENTIFIED BY 'Yangxin0917!' WITH GRANT OPTION;

7、配置默认编码为utf8

修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:

[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'

重新启动mysql服务,查看数据库默认编码如下所示:

MySQL8.0设置简单密码image](http://upload-images.jianshu.io/upload_images/16471414-a596a4b056115b62.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

4、MySQL 8.0 调整密码验证规则:

mysql> set global validate_password.policy=0;

mysql> set global validate_password.length=1;

5、重新设置密码: ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'a123456';
CREATE DATABASE IF NOT EXISTS my_db default charset utf8 COLLATE utf8_general_ci;

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