Linux 数据库 MySql 安装
Linux内核版本: Linux version 3.10.0-1062.18.1.el7.x86_64
数据库版本:mysql-5.7.20-1.el7.x86_64.rpm-bundle
一、 数据库安装
1. 将“mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar”拷到 CentOs 中,并解压 tar 包
tar xvf mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar
2. 删除系统中原有的 mysql-libs
yum remove mysql-libs
3. 安装 common
rpm -ivh mysql-community-common-5.7.20-1.el7.x86_64.rpm
4. 安装 libs
rpm -ivh mysql-community-libs-5.7.20-1.el7.x86_64.rpm
5. 安装 libs-compat
rpm -ivh mysql-community-libs-compat-5.7.20-1.el7.x86_64.rpm
6. 安装 client
rpm -ivh mysql-community-client-5.7.20-1.el7.x86_64.rpm
7. 将“libaio-0.3.107-10.el6.x86_64.rpm”拷到 CentOs 中,并安装 libaio
rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm
8. 安装 server
rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm
二、 服务相关
1. 启动服务:
# systemctl start mysqld
2. 查询服务:
# systemctl status mysqld
3. 设置开机启动:# systemctl enable mysqld
# systemctl daemon-reload
三、 数据库设置
Version:0.9 StartHTML:0000000105 EndHTML:0000002631 StartFragment:0000000141 EndFragment:0000002591
1. 修改 root 密码
(1)查询安装时默认密码:
# grep 'temporary password' /var/log/mysqld.log
查询结果如下图:
(2)登录:
# mysql -u root -p (1 中的结果“pB&1Z/MkBUb/”)
(3)修改密码:
mysql>set password for 'root'@'localhost'=password('0p;/(OL>');
Version:0.9 StartHTML:0000000105 EndHTML:0000002631 StartFragment:0000000141 EndFragment:0000002591
1. 修改 root 密码
(1)查询安装时默认密码:
# grep 'temporary password' /var/log/mysqld.log
查询结果如下图:
(2)登录:
# mysql -u root -p (1 中的结果“pB&1Z/MkBUb/”)
(3)修改密码:mysql>set password for 'root'@'localhost'=password('0p;/(OL>');
2. 授予外部访问权限
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '0p;/(OL>' WITH GRANT OPTION;
3. 防火墙打开默认 3306 端口
4. 修改字符集
# vim /etc/my.cnf
-
5. 重启服务
# systemctl restart mysqld
6. 进入查询字符集,查询命名及结果如下:
mysql> show variables like '%character%';
四、mysql远程连接问题处理
1、处理用户远程访问问题(Access denied for user 'root'@'118.26.72.130' (using password: YES))
a. GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' ( 这里的123456为你给 新增权 限用户设置的密码,%代表所有主机,也可以具体到你的主机ip地址
b.flush privileges; 这一步一定要做,不然无法成功! 这句表示从mysql数据库的grant表中重新 加载 权限数据, 因为MySQL把权限都放在了cache中,所以在做完更改后需要重新加载。
2、在执行第一步或者修改密码是你可能遇到如下问题(Your password does not satisfy the current policy requirements),解决办法如下:
a、show variables like 'validate_password%';
b、set global validate_password_policy ='LOW';(设置密码验证策略)
c、update user set authentication_string=password("root") where user='root';
四、 用户管理
1. 添加用户:
# mysql -u root –p (输入密码 0p;/(OL>)
mysql> CREATE USER 'oip2018'@'%' IDENTIFIED BY '9ol.*IK<';
2. 新建数据库:hos_op , 通过 navicat 创建,字符集选 UTF-8
3. 添加权限: mysql> grant select,insert,update,delete on hos_op.* to [email protected]"%";
4、参数说明:
username:你将创建的用户名
host:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以 从任意远程主机登陆,可以使用通配符%
password:该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器
例子:
CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';
privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使ALL
databasename:数据库名
tablename:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*
例子:
GRANT SELECT, INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';
GRANT ALL ON maindataplus.* TO 'pig'@'%';
文章详情、安装包下载: http://www.xiaoyuge.com.cn/#/article/detail?articleId=1