【mysql】centos7下mysql的安装以及基本操作

时间:2022-06-10 03:05:47

centos7使用的MariaDB,替代了早期版本默认的MySQL。MariaDB是MySQL的一个分支,由开源社区维护,采用GPL授权许可,且MariaDB完全贱人MySQL。

检查centos7下现有的MariaDB安装包:


删除MariaDB安装包:
[[email protected] ~]$ su root
Password:
[[email protected] hadoop]# rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

下载mysql安装包:
mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar
注:要对应各自centos的版本,我用的是centos7

检查是否安装其他mysql包:
rpm -qa | grep mysql

安装mysql:
rpm -ivh mysql-community-common-8.0.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.17-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.17-1.el7.x86_64.rpm

成功结果:
[[email protected] hadoop]# rpm -ivh mysql-community-common-8.0.1
warning: mysql-community-common-8.0.17-1.el7.x86_64.rpm: Head
Preparing...                          #######################
Updating / installing...
   1:mysql-community-common-8.0.17-1.e#######################
[[email protected] hadoop]# rpm -ivh mysql-community-libs-8.0.17-
warning: mysql-community-libs-8.0.17-1.el7.x86_64.rpm: Header
Preparing...                          #######################
Updating / installing...
   1:mysql-community-libs-8.0.17-1.el7#######################
[[email protected] hadoop]# rpm -ivh mysql-community-client-8.0.1
warning: mysql-community-client-8.0.17-1.el7.x86_64.rpm: Head
Preparing...                          #######################
Updating / installing...
   1:mysql-community-client-8.0.17-1.e#######################
[[email protected] hadoop]# rpm -ivh mysql-community-server-8.0.1
warning: mysql-community-server-8.0.17-1.el7.x86_64.rpm: Head
Preparing...                          #######################
Updating / installing...
   1:mysql-community-server-8.0.17-1.e#######################

mysql启动关闭状态:
[[email protected] hadoop]# service mysqld start --启动
Redirecting to /bin/systemctl start mysqld.service
[[email protected] hadoop]# service mysqld stop --关闭
Redirecting to /bin/systemctl stop mysqld.service
[[email protected] hadoop]# service mysqld status --查看状态
Redirecting to /bin/systemctl status mysqld.service
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: inactive (dead) since Tue 2019-09-17 01:23:32 CST; 24s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 9334 ExecStart=/usr/sbin/mysqld $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
  Process: 9247 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 9334 (code=exited, status=0/SUCCESS)
   Status: "Server shutdown complete"

Sep 17 01:17:08 hadoop01 systemd[1]: Starting MySQL Server...
Sep 17 01:17:19 hadoop01 systemd[1]: Started MySQL Server.
Sep 17 01:23:30 hadoop01 systemd[1]: Stopping MySQL Server...
Sep 17 01:23:32 hadoop01 systemd[1]: Stopped MySQL Server.

首次登陆获取自动生成的临时密码:
[[email protected] hadoop]# sudo grep ‘temporary password‘ /var/log/mysqld.log
2019-09-16T17:17:17.183833Z 5 [Note] [MY-010454] [Server] A temporary password is generated for [email protected]: ?jeVxKndj40d
[[email protected] hadoop]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 8
Server version: 8.0.17

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type ‘help;‘ or ‘h‘ for help. Type ‘c‘ to clear the current input statement.

mysql>
--到此成功登陆mysql,下面我们需要修改root账户的登陆密码才能进行数据库相关操作。
--修改密码命令:ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘MyNewPassword‘

创建授权删除查询新用户:
mysql> create user ‘User‘@‘localhost‘ identified by ‘User_123456‘; --创建
Query OK, 0 rows affected (0.02 sec)
mysql> grant all privileges on *.* to ‘User‘@‘localhost‘; --授权
Query OK, 0 rows affected (0.02 sec)
mysql> drop user [email protected]; --删除
Query OK, 0 rows affected (0.01 sec)
mysql> select user,host from mysql.user;--查询
 ------------------ ----------- 
| user             | host      |
 ------------------ ----------- 
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
 ------------------ ----------- 
4 rows in set (0.01 sec)

我们进行如下操作:
mysql>  create user ‘User‘@‘localhost‘ identified by ‘User_123456‘;
Query OK, 0 rows affected (0.01 sec)

mysql> grant all privileges on *.* to ‘User‘@‘localhost‘;
Query OK, 0 rows affected (0.01 sec)

mysql> create user ‘User‘@‘%‘ identified by ‘User_123456‘;
Query OK, 0 rows affected (0.01 sec)

mysql> grant all privileges on *.* to ‘User‘@‘%‘;
Query OK, 0 rows affected (0.01 sec)

mysql> create user ‘User‘@‘master‘ identified by ‘User_123456‘;
Query OK, 0 rows affected (0.01 sec)

mysql> grant all privileges on *.* to ‘User‘@‘master‘;
Query OK, 0 rows affected (0.02 sec)

mysql> select user,host from mysql.user;
 ------------------ ----------- 
| user             | host      |
 ------------------ ----------- 
| User             | %         |
| User             | localhost |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
| User             | master    |
 ------------------ ----------- 
7 rows in set (0.00 sec)

mysql数据库的基本操作:
mysql> create database test_db;--创建数据库
Query OK, 1 row affected (0.01 sec)

mysql> show databases; --展示数据库
 -------------------- 
| Database           |
 -------------------- 
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test_db            |
 -------------------- 
5 rows in set (0.07 sec)

mysql> use test_db; --进入数据库
Database changed
mysql> create table myclass ( --创建数据表
    -> id int(4) not null primary key auto_increment,
    -> name char(20) not null,
    -> sex int(4) not null default ‘0‘,
    -> degree double(16,2));
Query OK, 0 rows affected, 3 warnings (0.04 sec)

mysql> insert into myclass values(0001,"Liu Qin Jiang",0,100.00); --插入数据
Query OK, 1 row affected (0.02 sec)

mysql> select * from myclass; -查询数据
 ---- --------------- ----- -------- 
| id | name          | sex | degree |
 ---- --------------- ----- -------- 
|  1 | Liu Qin Jiang |   0 | 100.00 |
 ---- --------------- ----- -------- 
1 row in set (0.00 sec)

mysql> drop table myclass; -删除数据表
Query OK, 0 rows affected (0.03 sec)

mysql> drop database test_db; --删除数据库
Query OK, 0 rows affected (0.02 sec)