centos 7 安装MySQL

  

启动MySQL>>mysql -uroot -p
centos 7 默认是mariadb先删除yum remove mysql

1,准备mySql源码安装

  # wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.19.tar.gz

2:对于centos 7 安装mySql依赖项

      # yum install gcc-c++ make cmake bison bison-devel ncurses-devel libaio-devel perl

      # yum install perl-Data-Dumper

不重要3:安装cmake,下载cmake-2.8.10.2.tar.gz,自行下载

      # tar -zxv -f cmake-2.8.10.2.tar.gz

      # cd cmake-2.8.10.2

      # ./configure

      # make

      # make install

       接下来配置cmake环境变量

      # vi /etc/profile 》》在该文件中末尾追加下面两行

        PATH=/usr/local/cmake-2.8.10.2/bin:$PATH
        export PATH

      # source /etc/profile  》》执行后修改生效

      # echo $PATH    》》查看PATH值//

 

 

mysql报错:/usr/sbin/mysqld:unknown variable 'default-character-set=utf8'

 

 

 

  修改mysql的字符集时,为了将默认字符集设置为utf-8,便将/etc/my.cnf下[mysqld]加了一行 default-character-set=utf8,

但是在下次启动系统的时候,mysql登录不上,报错Can't connect to local MySQL serverthrough socket '/var/lib/mysql/mysql.sock'(2),

这时通过命令查找mysql.sock #find / -name mysql.sock ,

没有查找到文件,mysqld服务启动后才会生成该文件,

然后查看mysqld是否启动 #sudo service mysqld status

mysqld服务没有启动成功,查看日志文件 /var/log/mysqld.log

发现有报错: /usr/sbin/mysqld:unknown variable 'default-character-set=utf8'

此报错是由/etc/my.cnf配置文件下的[mysqld]设置字符集引起的,解决方法:将default-character-set=utf8 改为 character_set_server=utf8

重启系统即可。

[client]下的不要修改

 

4 : rpm -qa|grep mysql查看安装库了没

5:安装mySql

      创建安装路径和数据库保存路径

      安装路径: mkdir -p /usr/lcoal/mysql

      数据库路径:mkdir -p /usr/local/mysql/data

      创建mysql用户和组

                     groupadd mysql

                     useradd -r -g mysql mysql

sudo yum install mysql-server按装库

一、系统环境

yum update升级以后的系统版本为

[root@yl-web yl]# cat /etc/redhat-release 
CentOS Linux release 7.1.1503 (Core) 

二、mysql安装

一般网上给出的资料都是

#yum install mysql
#yum install mysql-server
#yum install mysql-devel

安装mysql和mysql-devel都成功,但是安装mysql-server失败,如下:

复制代码
[root@yl-web yl]# yum install mysql-server
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.sina.cn
 * extras: mirrors.sina.cn
 * updates: mirrors.sina.cn
No package mysql-server available.
Error: Nothing to do
复制代码

查资料发现是CentOS 7 版本将MySQL数据库软件从默认的程序列表中移除,用mariadb代替了。

有两种解决办法:

1、方法一:安装mariadb

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

安装mariadb,大小59 M。

[root@yl-web yl]# yum install mariadb-server mariadb 

mariadb数据库的相关命令是:

systemctl start mariadb  #启动MariaDB

systemctl stop mariadb  #停止MariaDB

systemctl restart mariadb  #重启MariaDB

systemctl enable mariadb  #设置开机启动

所以先启动数据库

[root@yl-web yl]# systemctl start mariadb

然后就可以正常使用mysql了

复制代码
[root@yl-web yl]# mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 5.5.41-MariaDB MariaDB Server

Copyright (c) 2000, 2014, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.00 sec)

MariaDB [(none)]> 
复制代码

安装mariadb后显示的也是 MariaDB [(none)]> ,可能看起来有点不习惯。下面是第二种方法。

2、方法二:官网下载安装mysql-server

# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
# rpm -ivh mysql-community-release-el7-5.noarch.rpm
# yum install mysql-community-server

安装成功后重启mysql服务。

# service mysqld restart

初次安装mysql,root账户没有密码。

复制代码
[root@yl-web yl]# mysql -u root 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.6.26 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.01 sec)

mysql> 
复制代码

设置密码

mysql> set password for 'root'@'localhost' =password('password');
Query OK, 0 rows affected (0.00 sec)

mysql> 

不需要重启数据库即可生效。

在mysql安装过程中如下内容:

复制代码
Installed:
  mysql-community-client.x86_64 0:5.6.26-2.el7                mysql-community-devel.x86_64 0:5.6.26-2.el7                
  mysql-community-libs.x86_64 0:5.6.26-2.el7                  mysql-community-server.x86_64 0:5.6.26-2.el7               

Dependency Installed:
  mysql-community-common.x86_64 0:5.6.26-2.el7                                                                            

Replaced:
  mariadb.x86_64 1:5.5.41-2.el7_0          mariadb-devel.x86_64 1:5.5.41-2.el7_0   mariadb-libs.x86_64 1:5.5.41-2.el7_0  
  mariadb-server.x86_64 1:5.5.41-2.el7_0 
复制代码

所以安装完以后mariadb自动就被替换了,将不再生效。

[root@yl-web yl]# rpm -qa |grep mariadb
[root@yl-web yl]# 

三、配置mysql

1、编码

mysql配置文件为/etc/my.cnf

最后加上编码配置

[mysql]
default-character-set =utf8

这里的字符编码必须和/usr/share/mysql/charsets/Index.xml中一致。

2、远程连接设置

把在所有数据库的所有表的所有权限赋值给位于所有IP地址的root用户。

mysql> grant all privileges on *.* to root@'%'identified by 'password';

如果是新用户而不是root,则要先新建用户

mysql>create user 'username'@'%' identified by 'password';  

此时就可以进行远程连接了。

posted @ 2017-06-22 18:08  自习室  阅读(115)  评论(0)    收藏  举报