找回密码
 立即注册
Qt开源社区 门户 查看内容

Linux CentOS 7 安装 mysql

2019-4-24 22:12| 发布者: admin| 查看: 964| 评论: 0

摘要: MYSQL:mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz下载地址:https://dev.mysql.com/downloads/file/?id=482726#如果是centos7,需要先卸载系统自带的Mariadb# rpm -qa|grep mariadbmariadb-libs-5.5.52-1.el7.x86_ ...
MYSQL:mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz

下载地址:https://dev.mysql.com/downloads/file/?id=482726

#如果是centos7,需要先卸载系统自带的Mariadb

[root@localhost ~]# rpm -qa|grep mariadb

mariadb-libs-5.5.52-1.el7.x86_64

[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64

#检查mysql是否存在
[root@localhost ~]# rpm -qa | grep mysql
#检查mysql组和用户是否存在,如无创建

[root@localhost ~]# cat /etc/group | grep mysql

[root@localhost ~]# cat /etc/passwd | grep mysql

#创建mysql用户组

[root@localhost ~]# groupdel mysql

[root@localhost ~]# groupadd mysql

#创建一个用户名为mysql的用户并加入mysql用户组

[root@localhost ~]# userdel mysql

[root@localhost ~]# useradd -g mysql mysql

#解压到指定文件夹下(一般放在/usr/local/下)

[root@localhost local]# tar -vxzf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz

#重命名为mysql

[root@localhost local]# mv mysql-5.7.21-linux-glibc2.12-x86_64/ /usr/local/mysql/

#更改所属的组和用户

[root@localhost ~]# cd /usr/local/

[root@localhost local]# chown -R mysql mysql/

[root@localhost local]# chgrp -R mysql mysql/

#在mysql文件夹下创建数据库数据存储目录data,也可以创建在其他位置

[root@localhost local]# cd mysql/

[root@localhost mysql]# mkdir data

[root@localhost mysql]# chown -R mysql:mysql data

#在etc下新建配置文件my.cnf,并在该文件内添加以下配置

[mysql]

# 设置mysql客户端默认字符集

default-character-set=utf8

[mysqld]

#skip-name-resolve

# 设置3306端口

port=3306

# 设置mysql的安装目录

basedir=/usr/local/mysql

# 设置mysql数据库的数据的存放目录

datadir=/usr/local/mysql/data

#datadir=/data/mysql

# 允许最大连接数

max_connections=2000

socket=/var/lib/mysql/mysql.sock

#log-error=/var/log/mysqld.log

#pid-file=/var/run/mysqld/mysqld.pid

# 服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

# 创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

lower_case_table_names=1

innodb_buffer_pool_size = 1G # (adjust value here, 50%-70% of total RAM)

innodb_log_file_size = 256M

innodb_flush_log_at_trx_commit = 1 # may change to 2 or 0

innodb_flush_method = O_DIRECT

[client]

sport=3306

socket=/var/lib/mysql/mysql.sock

#在/var/lib 文件夹下面创建 mysql 文件夹,如果不存在的话

[root@localhost mysql]# mkdir /var/lib/mysql

[root@localhost mysql]# chown -R mysql:mysql /var/lib/mysql

#安装和初始化

[root@localhost mysql]# bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

2018-12-17 20:15:37 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize

2018-12-17 20:15:41 [WARNING] The bootstrap log isn't empty:

2018-12-17 20:15:41 [WARNING] 2018-12-17T12:15:38.240438Z 0 [Warning] --bootstrap is deprecated. Please consider using --initialize instead

2018-12-17T12:15:38.281730Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)

2018-12-17T12:15:38.281756Z 0 [Warning] Changed limits: table_open_cache: 407 (requested 2000)

#将脚本文件设置成可执行文件

[root@localhost mysql]# cp ./support-files/mysql.server /etc/init.d/mysqld

[root@localhost mysql]# chown 777 /etc/my.cnf

[root@localhost mysql]# chmod a+x /etc/init.d/mysqld

[root@localhost mysql]# /etc/init.d/mysqld restart

 ERROR! MySQL server PID file could not be found!

Starting MySQL.Logging to '/usr/local/mysql/data/localhost.localdomain.err'.

. SUCCESS!

[root@localhost mysql]# killall mysqld

[root@localhost mysql]# /etc/init.d/mysqld start

Starting MySQL. SUCCESS!

[root@localhost mysql]# /etc/init.d/mysqld restart

Shutting down MySQL.. SUCCESS!

Starting MySQL. SUCCESS!

#设置开机启动

[root@localhost mysql]# chkconfig --level 35 mysqld on

[root@localhost mysql]# chkconfig --list mysqld

注意:该输出结果只显示 SysV 服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。

如果您想列出 systemd 服务,请执行 'systemctl list-unit-files'。

      欲查看对特定 target 启用的服务请执行

'systemctl list-dependencies [target]'。

mysqld             0:关    1:关    2:开    3:开    4:开    5:开    6:关

[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld

[root@localhost mysql]# chkconfig --add mysqld

[root@localhost mysql]# chkconfig --list mysqld

[root@localhost mysql]# service mysqld status

 SUCCESS! MySQL running (6272)

#编辑  vi /etc/profile

#在文本最后添加系统环境变量

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

[root@localhost mysql]# source /etc/profile

#获得初始密码

[root@localhost mysql]# cat /root/.mysql_secret

# Password set for user 'root@localhost' at 2018-12-17 20:15:37

xkfMyFyH4gjv //这就是初始密码

#修改密码

  1. [root@localhost mysql]# mysql -uroot -p

  2. Enter password:


登录之后:

mysql> set password for 用户名@localhost = password('新密码'); //修改用户密码

#添加远程访问权限

mysql> use mysql

mysql> select host,user from user;

ERROR 1046 (3D000): No database selected

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> select host,user from user;

+-----------+---------------+

| host      | user          |

+-----------+---------------+

| localhost | mysql.session |

| localhost | mysql.sys     |

| localhost | root          |

+-----------+---------------+

4 rows in set (0.00 sec)

#新建授权账户,这里 @'%' 表示在任何主机都可以登录,testRoot是mysql用户名,pwd123123是密码

mysql> GRANT ALL ON *.* TO testRoot@'%'  IDENTIFIED BY 'pwd123123' WITH GRANT OPTION;

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

mysql> flush privileges;

mysql> select host,user from user;

+-----------+---------------+

| host      | user          |

+-----------+---------------+

| %         | testRoot      |

| localhost | mysql.session |

| localhost | mysql.sys     |

| localhost | root          |

+-----------+---------------+

4 rows in set (0.00 sec)

mysql> exit;

Bye

#重启mysql

systemctl restart mysqld.service
systemctl start mysqld.service //启动
systemctl stop mysqld.service//关闭




----------------------------------------------------------------------------------------------------------------------
我们尊重原创,也注重分享,文章来源于微信公众号:彼岸花科技,建议关注公众号查看原文。如若侵权请联系qter@qter.org。
----------------------------------------------------------------------------------------------------------------------

鲜花

握手

雷人

路过

鸡蛋

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了