欢迎投稿

今日深度:

Centos7安装mydql之后已经自动让mariadb代替--mysql修改root密码,mydqlmariadb

Centos7安装mydql之后已经自动让mariadb代替--mysql修改root密码,mydqlmariadb


不想装oracle,心想装个mysql轻便一点,我用的linux版本是Fedora24.执行完yum安装命令后发现竟然无法启动错误提示如下

[java] view plain copy  print?
  1. [root@localhost ~]# systemctl start mysql.service  
  2. Failed to start mysql.service: Unit mysql.service not found.  
查了半天资料,终于了解到MariaDB代替了mysql数据库,MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。

因此用上述命令启动不起来,正确的方法如下 [java] view plain copy  print?
  1. # yum install mariadb-server -y //如果已安装可以省略  
  2. # systemctl start mariadb.service //启动服务  
  3. # systemctl enable mariadb.service //开机启动服务  
  4. # mysql -u root -p //登录mysql  

---------------------------------------------------------------------------------------------------不华丽的分割线-------------------------------------------------------------------------------------------------------- 如果你不想用这个方法解决这个问题,还有一个方法,不过个人并不推荐此方法,这个方法就是在 /etc/systemd/system/mysqld.service 添加Unit,既然错误提示找不到Unit那我们添加一个就好了。在 /etc/systemd/system/mysqld.service下添加如下内容 [java] view plain copy  print?
  1. [Unit]  
  2. Description=MySQL Server  
  3. After=network.target  
  4.   
  5. [Service]  
  6. ExecStart=/usr/bin/mysqld --defaults-file=/etc/mysql/my.cnf --datadir=/var/lib/mysql --socket=/var/run/mysqld/mysqld.sock User=mysql  
  7. Group=mysql  
  8. WorkingDirectory=/usr  
  9.   
  10. [Install]  
  11. WantedBy=multi-user.target  
然后运行 [java] view plain copy  print?
  1. systemctl daemon-reload  
刷新缓存 这样我们就可以用 [java] view plain copy  print?
  1. systemctl start mysql.service  
启动mysql了

这第二种方法未经本人亲自验证,不知是否有效,如果有效的话,还希望反馈。谢谢。之所以把他贴出来,是因为觉得这是一个解决问题的思路。


修改的用户都以root为列。
一、拥有原来的myql的root的密码;


方法一:
在mysql系统外,使用mysqladmin
mysqladmin -u root -p password "test123"
Enter password: 【输入原来的密码】

方法二:
通过登录mysql系统,
mysql -uroot -p
Enter password: 【输入原来的密码】
mysql>use mysql;
mysql> update user set password=passworD("test") where user='root';
mysql> flush privileges;
mysql> exit;      



二、忘记原来的myql的root的密码;

首先,你必须要有操作系统的root权限了。要是连系统的root权限都没有的话,先考虑root系统再走下面的步骤。
类似于安全模式登录系统,有人建议说是pkill mysql,但是我不建议哈。因为当你执行了这个命令后,会导致这样的状况:
/etc/init.d/mysqld status
mysqld dead but subsys locked
这样即使你是在安全模式下启动mysql都未必会有用的,所以一般是这样/etc/init.d/mysqld stop,如果你不幸先用了pkill,那么就start一下再stop咯。
mysqld_safe --skip-grant-tables &
&,表示在后台运行,不再后台运行的话,就再打开一个终端咯。
mysql
mysql> use mysql;
mysql> UPDATE user SET password=password("test123") WHERE user='root';   
mysql> flush privileges;
mysql> exit;                         
##本来mysql是不分大小写的,但是这个是修改的mysql中的mysql数据库的具体的值,要注意到。

www.htsjk.Com true http://www.htsjk.com/mariadb/29780.html NewsArticle Centos7安装mydql之后已经自动让mariadb代替--mysql修改root密码,mydqlmariadb 不想装oracle,心想装个mysql轻便一点,我用的linux版本是Fedora24.执行完yum安装命令后发现竟然无法启动错误提示如下...
相关文章
    暂无相关文章
评论暂时关闭