centos7系统自带mysql吗?

centos7系统自带mysql吗?,第1张

centos7是不自带mysql,虽然CentOS7中没有自带mysql

但是自带了另外一款数据库mariadb,我们安装mysql的时候会和mariadb产生冲突 , 最好的解决办法就是先卸载mariadb , 再安装mysql;

查看mariadb

卸载mariadb

查看CentOS是否已经安装mysql

假如安装了,要进行卸载

首先要确保电脑正常上网,才能通过yum安装。

2

执行yum install mysql进行安装。并在提示时输入y。

然后系统会自动寻找安装包,并进行安装。下图显示已成功安装完毕。

安装完毕后,尝试启动数据库。

系统提示找不到这个服务。再次看一下安装的包:

#rpm -qa |grep mysql

命令返回空,说明刚才没有安装成功。只好再次安装了。不过这次我们在命令后面加上*号。

看图,需要安装的包还真多!安装完成后,却发现只安装了JDBC和ODBC驱动。

我们在软件库中搜一下带mysql关键字的软件包:

返回的结果显示,软件库中根本就没有mysql软件包。这个时候,迷茫的开始查资料,资料显示在Centos7中用MariaDB代替了mysql数据库。好吧!那我们来安装MariaDB数据库吧!

*** 做方法同上,只不过在命令行里,把mysql改成了mariadb。

安装包一共59M

安装完成。

查看安装之后的包:

根据资料,mariadb数据库的启动命令是:

systemctl start mariadb #启动MariaDB

systemctl stop mariadb #停止MariaDB

systemctl restart mariadb #重启MariaDB

systemctl enable mariadb #设置开机启动

我执行以上命令,没有任何返回值。看来得研究一下mariadb数据了。

本人博客供参考

网页链接

下载mysql源安装包shell>wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm 

安装mysql源shell>yum localinstall mysql57-community-release-el7-8.noarch.rpm 

检查mysql源是否安装成功 

yum repolist enabled | grep “mysql.-community.” 

 

安装MySQL 

yum install mysql-community-server 

启动MySQL服务 

shell>systemctl start mysqld 

查看MySQL的启动状态 

shell>systemctl status mysqld 

开机启动 

shell>systemctl enable mysqld 

shell>systemctl daemon-reload 

修改root本地登录密码 

mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改: 

shell>grep ‘temporary password’ /var/log/mysqld.log 

 

shell>mysql -uroot -p 

mysql>ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘MyNewPass4!’ 

或者: 

mysql>set password for ‘root’@’localhost’=password(‘MyNewPass4!’) 

注意:mysql5.7默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误 

添加远程登录用户 

默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,我添加一个新的帐户: 

mysql>GRANT ALL PRIVILEGES ON . TO ‘yangxin’@’%’ IDENTIFIED BY ‘Yangxin0917!’ WITH GRANT OPTION

以上部分个人实践过,以下内容待实践

数据库存emoji 表情问题

mysql>SHOW VARIABLES WHERE Variable_name LIKE ‘character_set_%’ OR Variable_name LIKE ‘collation%’ 

+————————–+——————-+ 

| Variable_name | Value | 

+————————–+——————-+ 

| character_set_client | utf8 | 

| character_set_connection | utf8 | 

| character_set_database | latin1 | 

| character_set_filesystem | binary | 

| character_set_results | utf8 | 

| character_set_server | latin1 | 

| character_set_system | utf8 | 

| collation_connection | utf8_general_ci | 

| collation_database | latin1_swedish_ci | 

| collation_server | latin1_swedish_ci | 

+————————–+——————-+ 

10 rows in set (0.02 sec) 

可以看到我的mysql版本是5.7的,utf8mb4有一个使用限制,mysql版本必须是5.5以上,大家需要注意,我目前用的ubuntu系统是16.04的。当前mysql的字符集配置如上表,我们的目的是更改成utf8mb4。 

3.找到mysql的配置文件,可用命令 

sudo find / -name my.cnf 

我的配置文件位置如下,个别的位置有所不同 

/etc/mysql/mysql.conf.d/mysqld.cnf

4.修改配置文件 

在原文中添加以下内容: 

[client] 

default-character-set = utf8mb4 

[mysql] 

default-character-set = utf8mb4 

[mysqld] 

character-set-client-handshake = FALSE 

character-set-server = utf8mb4 

collation-server = utf8mb4_unicode_ci 

init_connect=’SET NAMES utf8mb4’ 

原文件中无“[client]”和“[mysql]”,需要手动添加上。 

……

Here is entries for some specific programs

The following values assume you have at least 32M ram

[client] 

default-character-set = utf8mb4 

[mysql] 

default-character-set = utf8mb4 

[mysqld_safe] 

socket = /var/run/mysqld/mysqld.sock 

nice = 0 

[mysqld] 

#

* Basic Settings

user = mysql 

pid-file = /var/run/mysqld/mysqld.pid 

socket = /var/run/mysqld/mysqld.sock 

port = 3306 

basedir = /usr 

datadir = /var/lib/mysql 

tmpdir = /tmp 

lc-messages-dir = /usr/share/mysql 

skip-external-locking 

character-set-client-handshake = FALSE 

character-set-server = utf8mb4 

collation-server = utf8mb4_unicode_ci 

init_connect=’SET NAMES utf8mb4’ 

#

Instead of skip-networking the default is now to listen only on

……

5.重启mysql服务 

sudo service mysql restart

6.查看结果 

mysql>SHOW VARIABLES WHERE Variable_name LIKE ‘character_set_%’ OR Variable_name LIKE ‘collation%’ 

ERROR 2006 (HY000): MySQL server has gone away 

No connection. Trying to reconnect… 

Connection id: 3 

Current database: * NONE * 

+————————–+——————–+ 

| Variable_name | Value | 

+————————–+——————–+ 

| character_set_client | utf8mb4 | 

| character_set_connection | utf8mb4 | 

| character_set_database | utf8mb4 | 

| character_set_filesystem | binary | 

| character_set_results | utf8mb4 | 

| character_set_server | utf8mb4 | 

| character_set_system | utf8 | 

| collation_connection | utf8mb4_unicode_ci | 

| collation_database | utf8mb4_unicode_ci | 

| collation_server | utf8mb4_unicode_ci | 

+————————–+——————–+ 

10 rows in set (0.00 sec)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9845180.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存