阿里Centos安装mysql
最近使用阿里云服务器安装mysql遇到的一些问题,在此记录下。
安装mysql首先要在阿里云服务器设置页面里面打开3306对应的端口号。
在里面打开对应的端口号开发,也可以自定义端口号,创建时可以选择。阿里云安全防御级别比较高,如果要远程访问mysql服务器,就必须对指定的ip地址进行授权,每一条规则只能设定一个ip号,同样的服务如mysql想要授权多个ip地址,就需要克隆设置多个ip地址就行。如果不进行端口号授权,远程访问是访问不了的!
下面来介绍下利用docker安装mysql。这里就不介绍docker的安装方法了,大家可以去菜鸟网学习安装。
进入到服务器,首先输入docker search mysql查看下当前docker中有的mysql镜像,用以选择下载。
1 [root@iZwz9a191mdam4di3dozk3Z ~]# docker search mysql 2 NAME DESCRIPTION STARS OFFICIAL AUTOMATED 3 mysql MySQL is a widely used, open-source relation… 7213 [OK] 4 mariadb MariaDB is a community-developed fork of MyS… 2311 [OK] 5 mysql/mysql-server Optimized MySQL Server Docker images. Create… 531 [OK] 6 percona Percona Server is a fork of the MySQL relati… 382 [OK] 7 zabbix/zabbix-server-mysql Zabbix Server with MySQL database support 136 [OK] 8 hypriot/rpi-mysql RPi-compatible Docker Image with Mysql 99 9 zabbix/zabbix-web-nginx-mysql Zabbix frontend based on Nginx web-server wi… 74 [OK] 10 centurylink/mysql Image containing mysql. Optimized to be link… 59 [OK] 11 1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5 ubuntu-16-nginx-php-phpmyadmin-mysql-5 48 [OK] 12 centos/mysql-57-centos7 MySQL 5.7 SQL database server 39 13 mysql/mysql-cluster Experimental MySQL Cluster Docker images. Cr… 33 14 tutum/mysql Base docker image to run a MySQL database se… 31 15 schickling/mysql-backup-s3 Backup MySQL to S3 (supports periodic backup… 23 [OK] 16 bitnami/mysql Bitnami MySQL Docker Image 19 [OK] 17 linuxserver/mysql A Mysql container, brought to you by LinuxSe… 17 18 zabbix/zabbix-proxy-mysql Zabbix proxy with MySQL database support 16 [OK] 19 centos/mysql-56-centos7 MySQL 5.6 SQL database server 10 20 circleci/mysql MySQL is a widely used, open-source relation… 7 21 openshift/mysql-55-centos7 DEPRECATED: A Centos7 based MySQL v5.5 image… 6 22 dsteinkopf/backup-all-mysql backup all DBs in a mysql server 5 [OK] 23 mysql/mysql-router MySQL Router provides transparent routing be… 5 24 openzipkin/zipkin-mysql Mirror of https://quay.io/repository/openzip… 1 25 cloudposse/mysql Improved `mysql` service with support for `m… 0 [OK] 26 cloudfoundry/cf-mysql-ci Image used in CI of cf-mysql-release 0 27 ansibleplaybookbundle/mysql-apb An APB which deploys RHSCL MySQL 0 [OK]
如上所示,可以看到各种版本,在这里我们选择mysql 5.7版本来进行安装。
从docker拉取mysql镜像,docker pull mysql:5.7,当然你也可以选择5.6版本,只要选择对应版本号替换就行。
1[root@iZwz9a191mdam4di3dozk3Z /]# docker pull mysql:5.7
1 5.7: Pulling from library/mysql 2 f17d81b4b692: Pull complete 3 c691115e6ae9: Pull complete 4 41544cb19235: Pull complete 5 254d04f5f66d: Pull complete 6 4fe240edfdc9: Pull complete 7 b79c3b745cc6: Pull complete 8 c6ebcbee59b1: Pull complete 9 e9bb65297d95: Pull complete 10 2a7c8492496e: Pull complete 11 6af69434adbe: Pull complete 12 54bc8b20381b: Pull complete 13 Digest: sha256:b56c3109f09a90c045ebe991e085fcaab5008cd6dbb8ab5ad1d6101fc0f87fcf 14 Status: Downloaded newer image for mysql:5.7
然后输入docker images |grep mysql 查看mysql安装情况,显示如下:
1 [root@iZwz9a191mdam4di3dozk3Z mysql]# docker images |grep mysql 2 mysql 5.7 a46c2a2722b9 4 days ago 256MB
创建mysql,输入docker create -it mysql:5.7安装mysql,然后输入docker run --name mysqlserver -e MYSQL_ROOT_PASSWORD=password -d -i -p 3306:3306 mysql:5.7,运行mysql并设置密码。
1 [root@iZwz9a191mdam4di3dozk3Z mysql]# docker create -it mysql:5.7 2 61c7a4d6363defac673461bb842685302dbe894f96c6dee03f2539de4af2a5d6 3 [root@iZwz9a191mdam4di3dozk3Z mysql]# docker run --name mysqlserver -e MYSQL_ROOT_PASSWORD=sgcc -d -i -p 3306:3306 mysql:5.7 4 e061047acf6e99ca72c22743ee727f708c129cdc8c5628c25e59253db4069ba6
查看mysql输入,docker ps,显示如下:
1 [root@iZwz9a191mdam4di3dozk3Z mysql]# docker ps 2 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 3 e061047acf6e mysql:5.7 "docker-entrypoint.s…" 13 seconds ago Up 12 seconds 0.0.0.0:3306->3306/tcp mysqlserver 4 024c06fcc1e8 morunchang/fastdfs "sh storage.sh" 3 days ago Up 3 days storage 5 3f2da1b259b5 morunchang/fastdfs "sh tracker.sh" 3 days ago Up 3 days
然后执行:docker exec -it e061047acf6e /bin/bash
1 [root@iZwz9a191mdam4di3dozk3Z mysql]# docker exec -it e061047acf6e /bin/bash
“e061047acf6e”是上面CONTAINER ID,对应的mysql:5.7的镜像。
执行之后连接mysql,输入:mysql -h 127.0.0.1 -u root -p
1 root@e061047acf6e:/# mysql -h 127.0.0.1 -u root -p 2 Enter password: 3 Welcome to the MySQL monitor. Commands end with ; or \g. 4 Your MySQL connection id is 3 5 Server version: 5.6.42 MySQL Community Server (GPL) 6 7 Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. 8 9 Oracle is a registered trademark of Oracle Corporation and/or its 10 affiliates. Other names may be trademarks of their respective 11 owners. 12 13 Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
输入密码之后就能看到连接进入了mysql客服端了,就表示一切ok了。外网远程访问时就可以连接了。
利用软件工具远程连接服务器中的mysql,输入服务器ip以及账号密码就行了。至于mysql用户名授权什么的,可以查看相关mysql的文档。