centOS部署mysql5.7
Hkc 2018-03-26 mysql
# 下载 mysql 源安装包
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
# 安装 mysql 源
yum localinstall mysql57-community-release-el7-8.noarch.rpm
# 检查 mysql 源是否安装成功
shell> yum repolist enabled | grep "mysql._-community._"
# 安装 MySQL
yum install mysql-community-server
# 查看 mysql 启动状态
systemctl status mysqld
mysql 安装完成之后,在/var/log/mysqld.log 文件中给 root 生成了一个默认密码。通过下面的方式找到 root 默认密码,然后登录 mysql 进行修改:
grep 'temporary password' /var/log/mysqld.log
: 号后面即为临时密码
# 链接 mysql
mysql -uroot -p
# 修改密码
mysql> set password for 'root'@'localhost'=password('MyNewPass4!');
# 通过 msyql 环境变量可以查看密码策略的相关信息:
mysql> show variables like '%password%';
validate_password_policy:密码策略,默认为 MEDIUM 策略
validate_password_dictionary_file:密码策略文件,策略为 STRONG 才需要
validate_password_length:密码最少长度
validate_password_mixed_case_count:大小写字符长度,至少 1 个
validate_password_number_count :数字至少 1 个
validate_password_special_char_count:特殊字符至少 1 个
# 初始的密码长度必须不小于 8 位 需要修改成合适的位数
首先,修改 validate_password_policy 参数的值
mysql> set global validate_password_policy=0;
set global validate_password_length=1;
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name | Value |
+--------------------------------------+-------+
| validate_password_dictionary_file | |
| validate_password_length | 6 |
| validate_password_mixed_case_count | 2 |
| validate_password_number_count | 1 |
| validate_password_policy | LOW |
| validate_password_special_char_count | 1 |
+--------------------------------------+-------+
# 创建新用户
create user username 用户名 [@host 访问者地址][identified by "password密码"]
host 可用%通配
eg:CREATE USER 'username'@'host' IDENTIFIED BY 'password';
# 为用户赋予权限
grant privitages 权限 on database 数据库名.table 表名 to username 用户名[@host 访问者地址]
privitages 可用 all 通配
database、table 可用\*通配
host 可用%通配
GRANT privileges ON databasename.tablename TO 'username'@'host'
GRANT ALL ON _._ TO 'pig'@'%';
# 导出数据库
mysqldump -h hostname -u username -ntd -R databasename > backupflie.sql (包括存过过程和函数一次性完整导出)
其中的 -ntd 是表示导出表结构和数据;-R 是表示导出函数、存储过程