Linux中安装MySQL
1.MySQL的下载地址
MySQL官网下载地址
http://dev.mysql.com/downloads/mysql/
MySQL搜狐镜像下载地址
http://mirrors.sohu.com/mysql/MySQL-5.7/
2.MySQL的安装
(1)检查当前系统是否安装过Mysql, 需要说明的是CentOS7默认已安装mariadb(MySQL源代码的一个分支,MySQL的另外一个衍生版本) ,因此在CentOS6中要检查mysql,而CentOS7要检查mariadb
[root@hadoop102 ~]$ rpm -qa|grep mariadb
mariadb-libs-5.5.56-2.el7.x86_64 //如果存在通过如下命令卸载
[root@hadoop102 ~]$ rpm -e --nodeps mariadb-libs //用此命令卸载mariadb
(2)将MySQL安装包拷贝到/opt/software目录下
[root@hadoop102 software]# ll
总用量 528384
-rw-r--r--. 1 root root 609556480 3月 21 15:41 mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar
(3)解压MySQL安装包
[root@hadoop102 software]# tar -xf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar
(4)在安装目录下执行rpm安装
[root@hadoop102 software]$ rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm
[root@hadoop102 software]$ rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm
[root@hadoop102 software]$ rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm
[root@hadoop102 software]$ rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm
注意:按顺序安装
(5)删除/etc/my.cnf文件中datadir指向的目录下的所有内容:
查看datadir的值:
[mysqld]
datadir=/var/lib/mysql
删除/var/lib/mysql目录下的所有内容:
[root@hadoop102 mysql]# pwd
/var/lib/mysql
[root@hadoop102 mysql]# rm -rf * //注意执行命令的位置
(6)初始化数据库
[root@hadoop102 opt]$ mysqld --initialize --user=mysql
(7)查看临时生成的root用户的密码
[root@hadoop102 opt]$ cat /var/log/mysqld.log
红框部分为临时密码
(8)启动MySQL服务
[root@hadoop102 opt]$ service mysqld start
(9)登录MySQL数据库
[root@hadoop102 opt]$ mysql -uroot -p
Enter password: 输入临时生成的密码 即为上图红框中的内容
(10)必须先修改root用户的密码,否则会报错
mysql> set password = password("新密码")
3.MySQL的安装位置
4.MySQL服务的自启动
(1)Mysql服务是开机自动启动
[root@hadoop102 ~]$ systemctl list-unit-files | grep mysqld.service
(2)如果要取消开机自启动,则输入命令ntsysv
[root@hadoop102 ~]$ ntsysv
出现以下界面:
使用空格键取消选中,然后按TAB确定!
或者
关闭服务自启动:
[root@hadoop100 mysql]# systemctl disable mysqld.service
查看状态:
[root@hadoop100 mysql]# systemctl list-unit-files | grep mysqld.service
5.修改字符集
查看默认的编码字符集
mysql>show create database mydb;
mysql>show create table mytbl;
mysql>show variables like '%char%'
永久修改默认的编码字符集:
[root@hadoop102 ~]$ vim /etc/my.cnf
#添加如下配置
[client]
default-character-set=utf8
[mysqld]
character_set_server=utf8
collation-server=utf8_general_ci
[mysql]
default-character-set=utf8
注意节点内容添加的位置
修改完成后重新启动MySQL服务
[root@hadoop102 ~]# service mysqld restart
修改已有库和表的编码
mysql> show create database mydb ; # 查看mydb库的 建库语句
mysql> show create table mytbl ; # 查看mytbl表的建表语句
mysql> alter database mydb character set 'utf8';
mysql> alter table mytbl convert to character set 'utf8';