Centos7安装mydql之后已经自动让mariadb代替--mysql修改root密码,mydqlmariadb
不想装oracle,心想装个mysql轻便一点,我用的linux版本是Fedora24.执行完yum安装命令后发现竟然无法启动错误提示如下
[java] view plain copy print?
- [root@localhost ~]# systemctl start mysql.service
- Failed to start mysql.service: Unit mysql.service not found.
因此用上述命令启动不起来,正确的方法如下 [java] view plain copy print?
- # yum install mariadb-server -y //如果已安装可以省略
- # systemctl start mariadb.service //启动服务
- # systemctl enable mariadb.service //开机启动服务
- # mysql -u root -p //登录mysql
---------------------------------------------------------------------------------------------------不华丽的分割线-------------------------------------------------------------------------------------------------------- 如果你不想用这个方法解决这个问题,还有一个方法,不过个人并不推荐此方法,这个方法就是在 /etc/systemd/system/mysqld.service 添加Unit,既然错误提示找不到Unit那我们添加一个就好了。在 /etc/systemd/system/mysqld.service下添加如下内容 [java] view plain copy print?
- [Unit]
- Description=MySQL Server
- After=network.target
- [Service]
- ExecStart=/usr/bin/mysqld --defaults-file=/etc/mysql/my.cnf --datadir=/var/lib/mysql --socket=/var/run/mysqld/mysqld.sock User=mysql
- Group=mysql
- WorkingDirectory=/usr
- [Install]
- WantedBy=multi-user.target
- systemctl daemon-reload
- systemctl start mysql.service
这第二种方法未经本人亲自验证,不知是否有效,如果有效的话,还希望反馈。谢谢。之所以把他贴出来,是因为觉得这是一个解决问题的思路。
修改的用户都以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数据库的具体的值,要注意到。
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。