CentOS 7安装MySQL

在CentOS7中默认安装了MariaDB,MariaDB是MySQL的分支。在生成环境中还是决定在系统中安装MySQL。MySQL安装完成之后可以直接覆盖掉MariaDB。

选择安装的版本是5.7的。

安装MySQL使用root用户:
1.打开终端,提示符为“$”,表明该用户为普通用户,此时,直接输su,回车,输入root密码,回车,就可以切换到root用户下,此时的提示符变为“#”。

注意,输入密码时终端是不显示的,而且每次切换为root用户都要经过这个过程。

2.切换回普通用户,只要输入 “su 用户名”就OK了。

一、下载MySQL官方的 Yum Repository

可以从官网之间下载后传到CentOS7系统;或者之间用使用下面的命令下载安装用的Yum Repository,大概25KB,然后就可以直接yum安装。

[root@localhost admin]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
01.PNG

二、安装

[root@localhost admin]# yum -y install mysql57-community-release-el7-10.noarch.rpm
02.PNG

接下来安装MySQL服务器:

[root@localhost admin]# yum -y install mysql-community-server

安装MySQL服务器需要处理依赖关系,安装依赖软件包和其他一些处理,等待一段时间。。。结束后会提示如下:


03.PNG

数据库安装完成,接着要进行设置。

三、数据库设置

启动mysql:

[root@localhost admin]# systemctl start  mysqld.service

查看mysql状态:

[root@localhost admin]# systemctl status mysqld.service
04.PNG

如图mysql已经正常运行。

接下来要登陆数据库,首先查看初始密码:

[root@localhost admin]# grep "password" /var/log/mysqld.log
05.PNG

登陆数据库,输入上面查到的密码:ydwxJ/

[root@localhost admin]# mysql -u root -p
06.PNG

此时虽然登陆了,但是不能进行数据操作。因为5.7版本需要修改密码后才可以操作。
测试环境下为了能用简单的密码,先设置一下密码设置规则:

mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
07.PNG

修改密码:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
08.PNG

测试

09.PNG

退出登陆后用新设置的密码登陆,成功。

授权远程访问

mysql数据库部署在linux服务器上,服务器在机房,或者是云服务器,mysql默认只允许root帐户在本地登录,为了在其他机器上可以操作数据库,而不是在服务器机器上操作,这就可以修改root允许远程连接,或者添加一个允许远程连接的帐户。
root授权远程访问:

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

将所有数据库的所有表(.)的所有权限(all privileges),授予通过任何ip(%)访问的root用户,密码为123456,最后刷新(flush privileges)即可。

添加远程登录用户:

mysql>grant all privileges on *.* to 'testuser'@'%' identified by '123456' with grant option; 

添加了一个testuser用户。
最后,在linux上开放防火墙端口。

设置开机启动

[root@localhost admin]# systemctl enable mysqld
[root@localhost admin]# systemctl daemon-reload

数据库配置

默认配置文件路径:
配置文件:/etc/my.cnf
日志文件:/var/log//var/log/mysqld.log
服务启动脚本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid

比如配置数据库默认编码为utf8
修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:

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

重新启动mysql服务。

常用数据库命令

1.更改root密码

mysqladmin -uroot password 'yourpassword'

2.远程登陆mysql服务器

mysql -uroot -p -h192.168.137.10 -P3306

3.查询数据库

show databases;

4.进入某个数据库

use databasename;

5.列出数据库中的表

show tables;

6.查看某个表全部字段

desc slow_log;

show create table slow_log\G; (不仅可以显示表信息,还可以显示建表语句)

7.查看当前用户

select user();

8.查看当前所在数据库

select database();

9.创建新数据库(可以指定字符集)

create database db1 charset utf8;

10.创建新表

create table t1 (`id` int(4), `name` char(40));

11.查看数据库版本

select version();

12.查看数据库状态

show status;         当前会话状态

show global status;  全局数据库状态

show slave status\G;   查看主从数据库状态信息

13.查询数据库参数

show variables;

14.修改数据库参数

show variables like 'max_connect%';

set global max_connect_errors = 1000;(重启数据库会失效,要在配置文件中修改)

15.查看当前数据库队列

show processlist;

16.创建普通用户并授权给某个数据库

grant all on databasename.* to 'user1'@'localhost' identified by '123456';

17.查询表数据

select * from mysql.db;           //查询该表中的所有字段

select count(*) from mysql.user;  //count(*)表示表中有多少行

select db,user  from mysql.db;    //查询表中的多个字段

select * from mysql.db where host like '10.0.%';在查询语句中可以使用万能匹配 “%”

18.插入一行数据

insert into db1.t1 values (1, 'abc');

19.更改表的某一行数据

update db1.t1 set name='aaa' where id=1;

20.清空表数据

truncate table db1.t1;

21.删除表

drop table db1.t1;

22.清空数据库中的所有表(数据库名是eab12)

mysql -N -s information_schema -e "SELECT CONCAT('TRUNCATE TABLE ',TABLE_NAME,';') FROM TABLES WHERE TABLE_SCHEMA='eab12'" | mysql -f eab12

23.删除数据库

drop database db1;

24.数据库备份

mysqldump  -uroot -p'yourpassword' mysql >/tmp/mysql.sql

25.数据库恢复

mysql -uroot -p'yourpassword' mysql 

26.新建普通用户

CREATE USER name IDENTIFIED BY 'ssapdrow';

27.更改普通用户密码

SET PASSWORD FOR name=PASSWORD('fdddfd');

28.查看name用户权限

SHOW GRANTS FOR name;

你可能感兴趣的:(CentOS 7安装MySQL)