阿里云centos 7 上安装mysql


centos 7 自带mariadb源,如果要安装mysql则需要卸载mariadb

#查看
rpm -qa | grep mariadb
#强制卸载
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

------------------------

开始安装

#安装perl

yum install -y perl-Module-Install.noarch

#安装mysql

rpm -ivh MySQL-server-5.6.27-1.linux_glibc2.5.x86_64.rpm --nosignature

rpm -ivh MySQL-client-5.6.27-1.linux_glibc2.5.x86_64.rpm

2.都安装完毕后,使用如下命令查看当前mysql的状态:

service mysql status


3.如果没有运行,则使用如下命令启动:

service mysql start 


4.可以顺便把启动命令加入到linux的启动项中,开机即启动mysql服务,命令如下:

chkconfig --add mysql

chkconfig mysql on

使用命令chkconfig –list查看下,此操作都是root权限。


5.给mysql设置root密码,使用如下命令:

mysql -u root -p

会提示输入密码,初始root密码保存在'/root/.mysql_secret'文件中

切换root用户打开.mysql_secret文件查看密码

vi /root/.mysql_secret

接着输入

mysql>SET PASSWORD = PASSWORD('123456');

退出后再用新密码测试

mysql> quit;

# mysql -uroot -p

如果可以登录成功,则表示mysql数据库已经安装成功。


cp my.cnf文件


PS:

1.如果出现客户端无法连接:

具体步骤:登陆到mysql 

首先 use mysql; 

按照别人提供的方式update的时候,出现错误。 

mysql> update user set host='%' where user = 'root'; 

问题2:ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY' ,尝试连接任然不成功

然后查看了下数据库的host信息如下: 

mysql> select host from user where user = 'root'; 

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

| host | 

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

| % | 

| 127.0.0.1 | 

| localhost.localdomain | 

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

3 rows in set (0.00 sec) 

host已经有了%这个值,所以直接运行命令: 

mysql>flush privileges; 


2.my.cnf配置文件

Linux下用rpm包安装的MySQL是不会安装/etc/my.cnf文件的,

至于为什么没有这个文件而MySQL却也能正常启动和作用,

第一种说法,my.cnf只是MySQL启动时的一个参数文件,可以没有它,这时MySQL会用内置的默认参数启动,

第二种说法,MySQL在启动时自动使用/usr/share/mysql目录下的my-medium.cnf文件,这种说法仅限于rpm包安装的MySQL,

解决方法,只需要复制一个/usr/share/mysql目录下的.cnf文件到/etc目录,并改名为my.cnf即可。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章