CentOS 搭建mysql-community-server
1:进入/usr/local/src 文件夹
如果存在src文件夹,直接进入
cd /usr/local/src
如果不存在,创建src文件夹
mkdir /usr/local/src
2:下载yum库
wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
3:安装yum库
yum localinstall -y mysql57-community-release-el7-7.noarch.rpm
4:安装mysql-community-server
yum install -y mysql-community-server
5:启动服务
systemctl start mysqld.service
6: 修改默认密码
mysql 5.7以上版本启动后会生成默认密码,可以通过命令获取
grep "password" /var/log/mysqld.log
[Note] A temporary password is generated for root@localhost: **#*TMcZUL-1fu**
登录命令行修改密码
mysql -u root -p#*TMcZUL-1fu
alter user 'root'@'localhost' identified by 'Root@xxx_#_*';
注意修改密码的复杂度为包含大小写字母数字及特需字符。详细原因可以参考ERROR 1819
7. 设置远程访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Root@xxx_#_*' WITH GRANT OPTION;
flush privileges;
PS创建数据库,创建用户,授权命令
1、create schema [数据库名称] default character set utf8 collate utf8_general_ci;–创建数据库
采用create schema和create database创建数据库的效果一样。
2、create user ‘[用户名称]’@’%’ identified by ‘[用户密码]’;–创建用户
密码8位以上,包括:大写字母、小写字母、数字、特殊字符
%:匹配所有主机,该地方还可以设置成‘localhost’,代表只能本地访问,例如root账户默认为‘localhost‘
3、grant select,insert,update,delete,create on [数据库名称].* to [用户名称];–用户授权数据库,如果赋予所有权限则all privileges
*代表整个数据库
4、flush privileges ;–立即启用修改
5、revoke all on . from tester;–取消用户所有数据库(表)的所有权限
6、delete from mysql.user where user=’tester’;–删除用户
7、drop database [schema名称|数据库名称];–删除数据库
8、5.7以后的数据库不支持用了group by后查询非goup by无关字段,解决方法
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'