在Linux上安装MySQL
本章简单阐述一下,mysq基于centos7的安装步骤
在VM上模拟安装
MySQL版本为:8.0.30
文章目录
- 在Linux上安装MySQL
- 1. MySQL下载
- 卸载MariaDB
- 查看版本
- 卸载
- 2.安装
- 解压mysql压缩包
- 重命名
- 创建用户和组
- 修改权限
- 编写配置文件
- 配置PATH变量
- 初始化
- 启动与关闭
- 设置密码
- 退出
- 设置远程登入
- SQLyog连接
- DateGrip连接
1. MySQL下载
下载官网:https://downloads.mysql.com/archives/community/
根据自己的需求下载所需要的版本
这里需要使用Xftp来将文件传入centos系统中
Xftp建立连接后,在opt目录下新建两个目录来存放下载的内容以及安装的内容(这里根据自己情况安装目录)
将下载的mysql压缩包传到install这个目录中
卸载MariaDB
在CentOS中默认安装有MariaDB,是MySQL的一个分支,主要由开源社区维护。
CentOS 7及以上版本已经不再使用MySQL数据库,而是使用MariaDB数据库。
如果直接安装MySQL,会和MariaDB的文件冲突。
所以,需要先卸载自带的MariaDB,再安装MySQL。
查看版本
rpm -qa | grep mariadb
卸载
rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64
卸载并重新查看,确认卸载干净后再安装
2.安装
解压mysql压缩包
tar -Jxvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz -C …/soft/
解压mysql压缩包到soft目录下
重命名
mv mysql-8.0.30-linux-glibc2.12-x86_64/ mysql8
进入soft目录 把文件名重命名,为了后面方便使用
创建用户和组
创建mysql组和mysql用户
mkdir - p /opt/soft/mysql8/datas
在soft目录下创键datas来存放数据库
修改权限
chown -R mysql:mysql /opt/soft/mysql8/datas
chmod -R 770 /opt/soft/mysql8/datas
修改目录的属主和属组
以及权限,这里赋最高权限
编写配置文件
在mysql8目录下 编辑一个mysql的配置文件
vim my.cnf //初始化mysql
[mysql]
# 默认字符集
default-character-set=utf8mb4
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
port = 3306
server-id = 3306
user = mysql
socket = /tmp/mysql.sock
# 安装目录
basedir = /opt/soft/mysql8
# 数据存放目录
datadir = /opt/soft/mysql8/datas/mysql
log-bin = /opt/soft/mysql8/datas/mysql/mysql-bin
innodb_data_home_dir =/opt/soft/mysql8/datas/mysql
innodb_log_group_home_dir =/opt/soft/mysql8/datas/mysql
#日志及进程数据的存放目录
log-error =/opt/soft/mysql8/datas/mysql/mysql.log
pid-file =/opt/soft/mysql8/datas/mysql/mysql.pid
# 服务端使用的字符集默认为8比特编码
character-set-server=utf8mb4
lower_case_table_names=1
autocommit =1
##################以上要修改的########################
skip-external-locking
key_buffer_size = 256M
max_allowed_packet = 1M
table_open_cache = 1024
sort_buffer_size = 4M
net_buffer_length = 8K
read_buffer_size = 4M
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 64M
thread_cache_size = 128
#query_cache_size = 128M
tmp_table_size = 128M
explicit_defaults_for_timestamp = true
max_connections = 500
max_connect_errors = 100
open_files_limit = 65535
binlog_format=mixed
binlog_expire_logs_seconds =864000
# 创建新表时将使用的默认存储引擎
default_storage_engine = InnoDB
innodb_data_file_path = ibdata1:10M:autoextend
innodb_buffer_pool_size = 1024M
innodb_log_file_size = 256M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
transaction-isolation=READ-COMMITTED
[mysqldump]
quick
max_allowed_packet = 16M
[myisamchk]
key_buffer_size = 256M
sort_buffer_size = 4M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
配置PATH变量
添加PATH变量 ----可在全局使用mysql
vim /etc/profile
添加:export PATH=$PATH:/opt/soft/mysql8/bin
source /etc/profile //执行文件
初始化
初始化mysql
mysqld --defaults-file=/opt/soft/mysql8/my.cnf --basedir=/opt/soft/mysql8/ --datadir=/opt/soft/mysql8/datas/mysql --user=mysql --initialize-insecure
defaults-file:指定配置文件(要放在–initialize 前面)
user: 指定用户
basedir:指定安装目录
datadir:指定初始化数据目录
intialize-insecure:初始化无密码
查看mysql的bin目录下是否有mysqld-safe,用于后台安全启动Mysql
启动与关闭
mysqld_safe --defaults-file=/opt/soft/mysql8/my.cnf &
启动服务
若关闭服务----mysqladmin -uroot -proot shutdown
ps -ef | grep mysql
查看mysql是否启动
mysql -uroot --skip-password
跳过密码证
设置密码
进入mysql之后
show databases ;//查看数据库
use mysql
alter user ‘root’@‘localhost’ identified with mysql_native_password by ‘root’; //设置密码root
flush privileges;//刷新
退出
quit
再次进入
mysql -uroot -p //本地登录
设置远程登入
选择mysql中的mysql数据库
mysql> use mysql
mysql> show tables;
mysql> update user set user.Host=‘%’ where user.User=‘root’;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> flush privileges;
mysql -uroot -hixxx.xxx.xxx.xxx -p//xxx为IP地址
SQLyog连接
1.mysql服务器的地址(也就是centos7ip地址)
输入用户和密码
若出现问题,查看服务器的防火墙是否关闭以及是否开启mysql远程连接
DateGrip连接
打开后选择mysql连接
添加ip地址 输入用户名以及密码
jdbc:mysql://192.168.204.52:3306?useSSL=false
在连接后添加?useSSL=false,将SSL认证改成false
左下角会自动提醒下载驱动,点击下载即可
输入密码后测试连接成功
即可登入