linux安装mysql、docker

本文档详细介绍了如何在CentOS7系统中通过yum源安装MySQL5.7,包括下载、解压、配置my.cnf、初始化数据库、设置root密码、配置环境变量、远程登录及防火墙设置等步骤。此外,还涉及到了Docker的安装与Tomcat镜像的使用,以及如何开放端口和验证服务是否正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

yum源安装

MySQL安装

1、下载并安装mysql

1.1、mysql57CentOS地址,复制连接并执行命令,根据32位还是64位选择下载,
curl -O https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.36-linux-glibc2.12-i686.tar.gz
1.2、解压压缩包
tar -xvf  mysql-5.7.36-linux-glibc2.12-i686.tar.gz

移动解压包到指定位置/usr/local/mysql

 mv mysql-5.7.36-linux-glibc2.12-i686 /usr/local/mysql

进入mysql文件夹,创建data文件夹并配置my.cnf

cd /usr/local/mysql
mkdir data		
chown mysql:mysql -R /data/mysql   #赋予权限
vim /etc/my.cnf

将以下内容添加到my.cnf文件中

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

2、初始化数据库

进入目录usr/local/mysql/bin初始化数据库:(此位置报错很大可能是因为mysqld的版本与系统版本不一致)

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

查看密码

cat /data/mysql/mysql.err

将mysql.server放置到/etc/init.d/mysql中

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

启动mysql并更改root密码

service mysql start
ps -ef|grep mysql  # 查找mysql进程

启动成功就说明mysql初始化成功

登录mysql并修改密码

/usr/local/mysql/bin/mysql -u root -p	

如果出现报错:

1、 Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

解决(采用软链接):

cd /var/lib/mysql
mkdir mysql.sock
sudo ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

在mysql终端中修改密码,并重新登录

SET PASSWORD = PASSWORD('123456');	
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
2、Access denied for user ‘root’@‘localhost’ (using password: YES)

首先修改my.cnf,在标签[mysqld]添加字段skip-grant-tables

skip-grant-tables

登录mysql

/usr/local/mysql/bin/mysql -uroot -p

选择数据库,并修改密码

use mysql
UPDATE user SET password=PASSWORD('root') WHERE user='root';

如果这个时候报错提示: Unknown column 'password' in 'field list'

说明原来的数据库mysql已经把字段password改成了authentication_string,改一下语句即可

update mysql.user set authentication_string=password('root') where user='root'

3、配置mysql

3.1、配置环境变量
vim /etc/profile

在文件末尾添加

export PATH=PATH:/usr/local/mysql/bin

退出,重载文件

source /etc/profile
3.2、远程登录mysql

安装docker和tomcat

使用阿里云仓库

yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

若出现xxx不在 sudoers 文件中。此事将被报告错误,重启centos7,选择root登录

 vim /etc/sudoers

添加权限

cs	ALL(ALL)  ALL

安装最新版本的 Docker Engine-Communitycontainerd

yum install docker-ce docker-ce-cli containerd.io

启动 Docker。

systemctl start docker

通过运行 hello-world 映像来验证是否正确安装了 Docker Engine-Community

docker run hello-world

查找docker里镜像tomcat

docker search tomcat

拉取官方镜像

docker pull tomcat

查看所有镜像

docker images

启动tomcat镜像,前者是外围访问端口:后者是容器内部端口

docker run –d -p 8080:8080 tomcat

查看正在运行的镜像

docker ps

访问外部浏览器验证,如不能访问,则先打开防火墙指定端口

查看防火墙状态

 firewall-cmd --state

在running的状态下,添加开放端口。--permanent则表示永久开放,去掉表示临时

firewall-cmd --permanent --zone=public --add-port=8080/tcp

加载配置

firewall-cmd --reload 

查看开启的端口,出现8080/tcp则正确

firewall-cmd --permanent --zone=public --list-ports

若还是不能访问,则查看webapps里的文件

 docker exec -it e222b54c36aa /bin/bash
cd webapps
ls -l

如果显示total 0

返回上一级删除webapps文件夹,将webapps.dist文件夹下的内容复制到给webapps文件夹

cd ../
rm -rf webapps
mv webapps.dist webapps
要在Linux安装MySQL Docker镜像,你可以执行以下步骤: 1. 首先,确保你已经安装Docker。你可以使用以下命令检查是否已安装Docker: ``` docker -v ``` 2. 根据你的需求,选择合适的MySQL镜像版本。你可以从Docker Hub上搜索并选择一个适合你的版本。 3. 使用以下命令拉取MySQL镜像: ``` docker pull mysql:<版本号> ``` 注意替换`<版本号>`为你选择的MySQL版本号。比如,如果你选择的是MySQL 5.7版本,你可以使用以下命令: ``` docker pull mysql:5.7 ``` 4. 拉取完成后,你可以使用以下命令运行MySQL容器: ``` docker run -d -p <宿主机端口>:<容器端口> -e MYSQL_ROOT_PASSWORD=<密码> -e MYSQL_DATABASE=<数据库名> mysql:<版本号> ``` 注意替换`<宿主机端口>`、`<容器端口>`、`<密码>`、`<数据库名>`和`<版本号>`为你的实际配置。例如,如果你想将宿主机的端口3307映射到容器的端口3306,并设置root用户的密码为123456,数据库名为docker001,你可以使用以下命令: ``` docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_DATABASE=docker001 mysql:5.7 ``` 这将创建一个MySQL容器并运行它。 希望这能帮到你!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Linux安装docker并创建mysql容器](https://blog.csdn.net/dyslhl/article/details/127419191)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [alpine-mysql:Docker镜像MySQL(Alpine)](https://download.csdn.net/download/weixin_42118056/18756862)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值