mysql 重启 及编码问题
Failed to start mysql.service Unit not found.
執行完yum安裝命令后發現竟然無法啟動錯誤提示如下
[root@localhost ~]# systemctl start mysql.service
Failed to start mysql.service: Unit mysql.service not found.
查了半天資料,終于了解到MariaDB代替了mysql數據庫
因此用上述命令啟動不起來,正確的方法如下
# yum install mariadb -y //如果已安裝可以省略
# systemctl start mariadb.service //啟動服務
# systemctl enable mariadb.service //開機啟動服務
# mysql -u root -p //登錄mysql
————————————————
版權聲明:本文為CSDN博主「佐手烈焰魂」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_38286347/article/details/85060407
Access denied for user 'root'@'localhost' (using password: NO)
update user set authentication_string=password('root') where Host='localhost' and User='root';
flush privileges;
新版本要解決這個問題,步驟大致如下:
在系統偏好設置中關閉mysql服務
用安全模式啟動服務:sudo mysqld_safe --skip-grant-tables
mysql -u root 登錄,因為安全模式下,所以無需輸入密碼
登錄后進行密碼修改(密碼修改這部分mysql做了很大的改動)
use mysql
select * from user;
update mysql.user set authentication_string=password('root') where user='root';
update mysql.user set Host='localhost' where user='root';
flush privileges;
密碼字段已經不是之前的Password,新版本改為了現在的authentication_string字段
如果不按照這個步驟會報錯:Access denied for user 'root'@'localhost' (using password: NO)
最后就可以用 mysql -uroot -p 然后輸入上面設置的密碼登錄進mysql了
官方對于重置密碼的解釋
作者:China_ly
鏈接:https://www.jianshu.com/p/aed44bff2711
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
MYSQL中文亂碼以及character_set_database屬性修改
新安裝MYSQL,還沒有修改數據庫系統編碼。
之后由于創建數據庫時候:create database db_name; 沒有指定編碼,之后發現亂碼就修改各個屬性之后還是亂碼,便開始配置數據庫屬性,之后信息如下:
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
發現character_set_database該屬性設置utf8之后依舊還是Latin1 ,其實這個屬性是數據庫屬性,在創建數據庫時候如果不指定默認就是這個,因此對于創建的數據庫可以修改數據庫編碼為utf8,修改腳本:
alter database <數據庫名> character set utf8;
之后還是亂碼,由于之前數據錯誤編碼,所以設置utf8依舊亂碼,刪除數據重新導入即可。因此為了避免此問題,以后安裝數據庫首要任務就是配置編碼,創建數據庫時候指定編碼:
Mysql2::Error: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation
1、去zabbix數據庫主機查看數據庫字符集。
show variables like '%char%';
1
可以看到 character_set_database和character_set_server的字符集都不是utf8的所以需要進行設置。
2、修改數據庫配置文件(默認在/etc/my.cnf),增加如下配置:
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8
重啟數據庫
3、登錄后再次執行show variables like '%char%';結果都是utf8了,如下:
4、重新導入zabbix數據模型。
————————————————
版權聲明:本文為CSDN博主「宮凱寧」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/weixin_44723434/article/details/89145881
-bash-4.2# service mysqld restart
Redirecting to /bin/systemctl restart mysqld.service
Failed to restart mysqld.service: Unit not found
并不存在mysqld 的服務,
-bash-4.2#
-bash-4.2# chkconfig -list
-list: unknown option
-bash-4.2# chkconfig --list
Note: This output shows SysV services only and does not include native
systemd services. SysV configuration data might be overridden by native
systemd configuration.
If you want to list systemd services use ‘systemctl list-unit-files‘.
To see services enabled on particular target use
‘systemctl list-dependencies [target]‘.
aegis 0:off 1:off 2:on 3:on 4:on 5:on 6:off
agentwatch 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iprdump 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iprinit 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iprupdate 0:off 1:off 2:on 3:on 4:on 5:on 6:off
jexec 0:off 1:on 2:on 3:on 4:on 5:on 6:off
mysql.server 0:off 1:off 2:on 3:on 4:on 5:on 6:off
netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
總結
以上是生活随笔為你收集整理的mysql 重启 及编码问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 农行留学白金信用卡年费多少?一招轻松免年
- 下一篇: vue 判断数组是否为空