阿里云服务器部署(Mysql的安装)

    技术2022-07-15  77

    mysql一直没空安装,因为很少会自己安装,都是使用现成的,百度也有很多评论说安装失败,所以就自己记录一下,说不定哪天自己又用到了,如果各位觉得哪里不好或者不对的地方,请帮忙提出来,一起进步呀!!!

    1.首先查询服务器是否有自带的数据库

    rpm -qa | grep mysql

    (注意大小写,如果mysql 不行就换MySQL) 执行完命令发现有的话将其卸载,如果没有的话直接就可以安装,不需要卸载这个步骤了

    rpm –e mysql-*

    卸载后/var/lib/mysql中的数据及/etc/my.cnf不会删除,如果确定没用后就手工删除

      rm -f /etc/my.cnf   rm -rf /var/lib/mysql

    查看是否还有mysql服务

    netstat -nat

    执行到这里就差不多了 ,可以重新执行rpm -qa | grep mysql 是否还存在

    2.下载mysql的安装文件 下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads 然后将下载好的放到自己想要存放的服务器文件夹中 3.解压

    tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz

    4.创建mysql用户组和用户并修改权限

    groupadd mysql useradd -r -g mysql mysql

    5.创建数据目录并赋予权限

    mkdir -p /data/mysql #创建目录 chown mysql:mysql -R /data/mysql #赋予权限

    6.配置my.cnf文件夹

    vim /etc/my.cnf

    执行完后点击A或者 i 进入编辑模式

    配置的文件夹内容 :

    [mysqld] bind-address=0.0.0.0 port=3306 user=mysql basedir=/home/mysql #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

    修改完毕后按ESC退出并 :wq 进行保存

    7.初始化数据库

    进入mysql的bin

    cd /home/mysql-5.7.30-linux-glibc2.12-x86_64/bin/

    初始化

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

    查看密码 :

    cat /data/mysql/mysql.err

    8.启动mysql,并更改root 密码 先将mysql.server放置到/etc/init.d/mysql中

    cp /home/mysql-5.7.30-linux-glibc2.12-x86_64/support-files/mysql.server /etc/init.d/mysql

    启动

    service mysql start

    启动完成后执行以下命令查看是否成功

    ps -ef|grep mysql

    到了这里的话就已经安装成功了

    以下是修改密码 首先登录mysql,前面的那个是随机生成的。(进入到bin目录)

    ./mysql -u root -p

    接着执行下面三步操作,然后重新登录

    SET PASSWORD = PASSWORD('root'); ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; FLUSH PRIVILEGES;

    到这里就修改完成了,如果说使用远程连接 报错如下 :

    1130-host192.168.75.1'is not allowed to connect to this MYSQL server

    那么就执行,在执行的时候必须要登录mysql

    use mysql #访问mysql库 update user set host = '%' where user = 'root'; #使root能再任何host访问 FLUSH PRIVILEGES; #刷新

    这个时候就可以连接成功了. 如果出现

    2003 can't connect to MySQL server on ip(10060)

    这个问题很有可能是防火墙的问题,执行以下命令

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '数据库连接密码' WITH GRANT OPTION;

    执行完如果还没有成功的话,登录服务器配置3306端口

    到这里的话问题就解决可以连接了

    Processed: 0.018, SQL: 10