您的位置:首页 > 博客中心 > 数据库 >

新手小白Linux(Centos6.5)部署java web项目(mysql5.7安装及相关操作)

时间:2022-03-15 10:48

一、安装

  参考:

# 检测系统中是否安装了mysql
yum list installed | grep mysql

### 显示内容 ###
### 我已经装过了……没装之前可能什么都没有,也可能有低版本的mysql
mysql-community-client.x86_64
                     5.7.23-1.el6       @mysql57-community-dmr                  
mysql-community-common.x86_64
                     5.7.23-1.el6       @mysql57-community-dmr                  
mysql-community-libs.x86_64
                     5.7.23-1.el6       @mysql57-community-dmr                  
mysql-community-release.noarch
                     el6-5              @/mysql-community-release-el6-5.noarch  
mysql-community-server.x86_64
                     5.7.23-1.el6       @mysql57-community-dmr       



# 卸载低版本mysql,才能安装上mysql5.7
# remove后面是上面显示的文件(-y表示全过程选是),上面出现的全部都要remove掉
yum -y remove mysql-community-client.x86_64 mysql-community-common.x86_64 ...

### 显示内容 ###
...
Removed:
  mysql-community-client.x86_64    0:5.7.23-1.el6   mysql-community-common.x86_64 0:5.7.23-1.el6    
  mysql-community-libs.x86_64 0:5.7.23-1.el6   mysql-community-release.noarch 0:el6-5         

Dependency Removed:
  mysql-community-server.x86_64 0:5.7.23-1.el6

Complete!



# 再检测一次,直到为空

# 下载mysql的yum源(el6-5表示惹的redhat6和sentos6-mysql5)
wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm

# 载入yum源
yum install mysql-community-release-el6-5.noarch.rpm

# 查看mysql可用的安装源(安装源里面有mysql5的好几个版本)
yum repolist enabled | grep mysql

### 显示内容 ###
mysql-connectors-community MySQL Connectors Community                         59
mysql-tools-community      MySQL Tools Community                              65
mysql56-community          MySQL 5.6 Community Server                        453



# 发现没有5.7版本的,修改repo文件,把5.7版本改为可用,5.6版本改为不可用
vi /etc/yum.repos.d/mysql-community.repo

### 显示内容 ###
############################################################################################################

[mysql-connectors-community]
name=MySQL Connectors Community
baseurl=http://repo.mysql.com/yum/mysql-connectors-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

[mysql-tools-community]
name=MySQL Tools Community
baseurl=http://repo.mysql.com/yum/mysql-tools-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

# Enable to use MySQL 5.5
[mysql55-community]
name=MySQL 5.5 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.5-community/el/6/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

# Enable to use MySQL 5.6
[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/6/$basearch/
enabled=1 #把这个1改成0
gpgcheck=1
gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

# Note: MySQL 5.7 is currently in development. For use at your own risk.
# Please read with sub pages: https://dev.mysql.com/doc/relnotes/mysql/5.7/en/
[mysql57-community-dmr]
name=MySQL 5.7 Community Server Development Milestone Release
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/
enabled=0 #把这个0改成1
gpgcheck=1
gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

############################################################################################################



# 按i进入编辑模式!
# 输入数字不要使用小键盘!
# 按ESC键退出编辑模式!
# 输入:wq 回车--保存并退出!

# 再次检查mysql可用的安装源
yum repolist enabled | grep mysql
### 显示内容 ###
mysql-connectors-community MySQL Connectors Community                         59
mysql-tools-community      MySQL Tools Community                              65
mysql57-community-dmr      MySQL 5.7 Community Server Development Milesto    273



# 发现5.7版本的mysql安装源可用
# 使用yum安装mysql
yum install mysql-community-server -y

### 显示内容 ###
### 安装成功!
...
Installed:
  mysql-community-server.x86_64 0:5.7.23-1.el6                                                  

Dependency Installed:
  mysql-community-client.x86_64 0:5.7.23-1.el6   mysql-community-common.x86_64 0:5.7.23-1.el6  
  mysql-community-libs.x86_64 0:5.7.23-1.el6    

Complete!



# 启动服务
service mysqld start

# 5.7版本跟5.6版本的登录方式不一样,5.6默认root密码为空,5.7的root密码是随机生成的
# 首次登录可查看root密码,登录后要立即修改密码,设置复杂一些,不然报错说密码不安全
grep "password" /var/log/mysqld.log

### 显示内容 ###
2018-09-05T03:32:48.523907Z 1 [Note] A temporary password is generated for root@localhost: rr_pVi=rj3<u
...



# 可以看到密码为rr_pVi=rj3<u


# 登录mysql
mysql -uroot -p
Enter password: rr_pVi=rj3<u

# 修改root密码 mysql> ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘MyNewPassword!‘;
# 退出 mysql> exit; # 重新登录

 

二、配置

 

# linux系统安装mysql默认区分大小写
# 设置不区分大小写
[root@i-epo5ap9i ~]# vi /etc/my.cnf

#########################################################################################
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
lower_case_table_names=1 #在这里加上这句,linux下1不区分,0区分

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
~
~
#########################################################################################

# 保存并退出

# 重启mysql服务
[root@i-epo5ap9i ~]# service mysqld restart
Stopping mysqld:                                           [  OK  ]
Starting mysqld:                                           [  OK  ]

# 登录mysql
[root@i-epo5ap9i ~]# mysql -uroot -p
Enter password:...
Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.

# 查看所有数据库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

# 使用数据库:mysql
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

# 查看当前数据库的所有表
mysql> show tables;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
| db                        |
| engine_cost               |
| event                     |
| func                      |
| general_log               |
| gtid_executed             |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| innodb_index_stats        |
| innodb_table_stats        |
| ndb_binlog_index          |
| plugin                    |
| proc                      |
| procs_priv                |
| proxies_priv              |
| server_cost               |
| servers                   |
| slave_master_info         |
| slave_relay_log_info      |
| slave_worker_info         |
| slow_log                  |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
+---------------------------+
31 rows in set (0.00 sec)

# 查看用户表(只看主机和用户名字段,*的话太多了)
mysql> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| host      | username      |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+
4 rows in set (0.00 sec)

# 创建数据库
mysql> create database test;
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test               |
+--------------------+
5 rows in set (0.00 sec)

# 创建用户并授予test数据库的所有权限
mysql> grant all privileges on test.* to ‘test_user‘@‘%‘ identified by ‘test123.PassWord‘;
Query OK, 0 rows affected, 1 warning (0.00 sec)

# 刷新权限
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

# 再次查看用户表
mysql> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | test_user     |
| host      | username      |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+
5 rows in set (0.00 sec)

# 查看test_user用户权限
mysql> show grants for ‘test_user‘@‘%‘;

+-----------------------------------------------------+
| Grants for test_user@%                              |
+-----------------------------------------------------+
| GRANT USAGE ON *.* TO ‘test_user‘@‘%‘               |
| GRANT ALL PRIVILEGES ON `test`.* TO ‘test_user‘@‘%‘ |
+-----------------------------------------------------+
2 rows in set (0.00 sec)

# 退出
mysql> exit;
Bye

 

 

三、导库

# 把数据库的sql文件上传到linux服务器
[root@i-epo5ap9i ~]# rz
-bash: rz: command not found

# 安装lrzsz
[root@i-epo5ap9i ~]# yum install lrzsz -y
...
Installed:
  lrzsz.x86_64 0:0.12.20-27.1.el6                                                               

Complete!

# 从windows本机上传到linux服务器(回车后会弹出一个选择文件的弹窗,选中文件点击add后再点OK)
[root@i-epo5ap9i ~]# rz
rz waiting to receive.
Starting zmodem transfer.  Press Ctrl+C to cancel.
Transferring test.sql...
  100%     953 bytes  953 bytes/sec 00:00:01       0 Errors  


# 换用户登录mysql
[root@i-epo5ap9i ~]# mysql -u test_user -p
Enter password: 
...
Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.

# 使用test数据库
mysql> use test;
Database changed

# 给test数据库设置编码方式
mysql> set names utf8;
Query OK, 0 rows affected (0.00 sec)

# 导入数据库(运行部署项目对应的sql文件)
mysql> source /root/test.sql;
Query OK, 0 rows affected (0.00 sec)

Query OK, 0 rows affected, 1 warning (0.00 sec)

...

# 查看该数据库的所有表
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| role           |
| user           |
| ...            |
+----------------+
2 rows in set (0.00 sec)

# 导入成功,退出mysql
mysql> exit;
Bye

 

本类排行

今日推荐

热门手游