分享好友 系统运维首页 频道列表

[数据库]Ubuntu Linux/Kylin: 安装MySQL

Ubuntu  2023-02-10 00:100

1 文由

由于安装环境较为特殊,实在折煞人也。而此环境的网络博客/教程偏少,觉得有必要记录一下。

2 环境

安装主机不支持联网 即 不支持APT/APT-GET等傻瓜式的在线安装方式。

  • 硬件架构: AARCH64(ARM64架构的V8状态)
  • OS: Kylin(国产操作系统:银河麒麟)
    • 基于 Ubuntu Linux内核
root@Kylin:~# cat /proc/version
Linux version 4.15.0-72kord1-generic (root@Kylin) (gcc version 5.4.0 20160609 (Ubuntu/Linaro 5.4.0-6kord1~16.04.10)) #72kord1 SMP Tue Jan 14 20:23:52 CST 2020

root@Kylin:~# uname -a
Linux Kylin 4.15.0-72kord1-generic #72kord1 SMP Tue Jan 14 20:23:52 CST 2020 aarch64 aarch64 aarch64 GNU/Linux

3 安装过程

  • 下载、上传: 支持ARM64的MySQL安装包到目标主机
https://launchpad.net/ubuntu/bionic/arm64/mysql-server
https://launchpad.net/ubuntu/bionic/arm64/mysql-server/5.7.27-0ubuntu0.18.04.1
  • 安装: MySQL
dpkg -i mysql-server_5.7.27-0ubuntu0.18.04.1_all.deb
  • 初次登陆: MySQL
    登陆前,需配置MySQL的socket通信文件(mysqld.sock)
sudo mysql -u root -p
Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

解决方法: 
+ 创建sock文件
      mkdir /var/run/mysqld/
      touch /var/run/mysqld/mysqld.sock
+ 修改文件所有者
      chown mysql /var/run/mysqld/mysqld.sock
+ 重启服务
      service mysql restart
  • 查看用户(debian-sys-maint)初始登陆密码
cat /etc/mysql/debian.cnf
      user     = debian-sys-maint
      password = JALJKBhjpqCfgeIPyo
  • 再次登陆
root@Kylin:~# mysql -udebian-sys-maint -pJALJKBhjpqCfgeIPyo
  • 修改: 密码
show databases;
use mysql;
update user set authentication_string=PASSWORD("123456") where user='root';
update user set plugin="mysql_native_password";
flush privileges;
quit;
	
mysql -uroot -p      #输入上面查到的临时密码
alter user 'root'@'localhost' identified by '123456';
create user 'root'@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
  • 配置: 支持远端连接
root@Kylin:~# vi /etc/mysql/mysql.conf.d/mysqld.cnf
root@Kylin:~# mysql -u root -p
    # Instead of skip-networking the default is now to listen only on
    # localhost which is more compatible and is not less secure.
    # bind-address            = 127.0.0.1
    bind-address              = 0.0.0.0
  • 配置: mysql系统级配置
    为什么用这种繁琐、效率低下的配置方式?
    因为N次尝试直接配置mysqld.cnf文件后,再重启MySQL均失败,实在不得已而为之。

修改/etc/mysql/mysql.conf.d/mysqld.cnf(等同于配置其他常见主流教程中的/etc/mysql/my.cnf)配置:

查找 OS配置文件: find / -name "my.cnf"
查看 MySQL配置项: show variables like 'datadir';

    set global thread_cache_size=64;
    set global max_allowed_packet=104857600;
    	100M = 100*1024*1024 = 104857600
    set global key_buffer_size = 629145600;
    	600M = 600*1024*1024 = 629145600
    set global query_cache_size = 268435456;
    	256M = 256*1024*1024 = 268435456
    set global max_connections=500;
    set global table_open_cache = 1024;
        # table_cache 在5.1.3以后叫做 table_open_cache
    set global innodb_buffer_pool_size=2147483648;
    	2048M = 2048*1024*1024 = 2147483648
    set global collation_server=utf8_bin;
    set global sql_mode='NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES';
    set global sort_buffer_size = 6144;
    	6M = 6*1024= 6144
    set global read_buffer_size = 6144;
        6M = 6*1024= 6144
    set global read_rnd_buffer_size = 8192;
    	8M = 8*1024 = 8192
    set global myisam_sort_buffer_size = 65536;
		64M = 64*1024= 65536
    set global innodb_flush_log_at_trx_commit = 2;    
    
    [read only] 【只能通过配置文件修改,本次安装没有配置成功如下配置项】
    set global datadir='/var/lib/mysql/' 【有改动】
    set global symbolic-links=0;
    set global log_error='/var/log/mysql/error.log'; 【有改动】
    set global skip_name_resolve;
        # 能让MySQL登陆链接变快速      # 0 关闭支持符号链接
 	set global lower_case_table_names=0;
    set global innodb_log_file_size = 1073741824;
    	1024M = 1024*1024*1024 = 1073741824
    set global innodb_log_files_in_group = 3;
  • 配置: MySQL端口
vi /etc/mysql/mysql.conf.d/mysqld.cnf
      [mysqld]
      port = 1314
  • 配置: 字符集编码
【服务端字符集】
set global character_set_server=utf8; 
或(推荐↓)
vi /etc/mysql/mysql.conf.d/mysqld.cnf
      [mysqld]
      character-set-server=utf8

【数据库字符集】[可选]
set global character_set_database=utf8;

【客户端字符集】
vi /etc/mysql/conf.d/mysql.cnf 
      [mysql]
      no-auto-rehash
      default-character-set=utf8

查看 MySQL字符集编码: show variables like '%character%';

+--------------------------+----------------------------+
| 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     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
  • 配置MySQL服务到系统服务中
systemctl start mysql.service

上述操作失败时,可进行的辅助操作↓

cat /var/log/syslog

service mysql restart
service mysql status

4 文献: 参考与推荐

查看更多关于【Ubuntu】的文章

展开全文
相关推荐
反对 0
举报 0
评论 0
图文资讯
热门推荐
优选好物
更多热点专题
更多推荐文章
ubuntu中vi下删除键和上下左右键输入字符异常(ABCD)
 刚安装的Ubuntu系统,使用vi编辑文本的时候,出现以下现象:点删除键输入了 D回车无效上下左右为字母光标乱跳 原因:自带的vi功能问题 解决:卸载原有vi,重新安装完整版本vim执行以下命令即可: sudo apt-get remove vim-common sudo apt-get install v

0评论2023-02-10714

ubuntu禁止ping操作(禁用ICMP协议访问) icmp协议支持ping命令
ping命令是计算机之间进行相互检测线路完好的一个应用程序,计算机间交流数据的传输没有经过任何的加密处理,因此我们在用ping命令来检测某一个服务器时,可能在因特网上存在某个非法分子,为了安全我们把ping给禁止掉。通过专门的黑客程序把在网络线路上传输

0评论2023-02-10349

Ubuntu16配置静态IP ubuntu16.04配置静态ip
一、静态IP地址配置sudo vi/etc/network/interfaces然后按照如下格式修改:注意这里的网卡名字是ens33auto loiface lo inet loopbackauto ens33iface ens33 inet staticaddress 192.168.1.106netmask 255.255.255.0gateway 192.168.1.1二、配置DNS#临时修改su

0评论2023-02-10379

ubuntu 更新源
在终端执行以下命令(第一条是备份现有服务器列表,第二条是使用Gedit编辑,您也可以使用自己喜爱的编辑器编辑。) sudo cp /etc/apt/sources.list /etc/apt/sources.list_backupsudo gedit /etc/apt/sources.list从以下各服务器列表内容中选择一段替换文件中

0评论2023-02-10712

ubuntu查看实时带宽
安装 sudo apt-get install bmon 查看网络 bmon -p eth0 - 输入g控制流量面板的显示和隐藏 - 输入d控制详情信息的显示和隐藏 - 输入q退出面板

0评论2023-02-10721

SSH连接虚拟机中的Ubuntu(转)
摘要:主要是解决不能使用ssh远程Ubuntu的问题、使用的远程工具是putty、也可以使用xshell、ubunut12.0.4是装在虚拟机中的、不过这个应该没有什么影响。一:问题的出现前两天使用VMware装了一个ubuntu12.0.4之后、因为常常使用命令行、又喜欢在虚拟机与实体机

0评论2023-02-10837

Ubuntu18.04中用CMake-gui安装OpenCV3.2.0和OpenCV_contrib-3.2.0
下载和添加依赖包1、首先更新 apt-get,在安装前最好先更新一下系统,不然有可能会安装失败。在终端输入:    sudo apt-get update    sudo apt-get upgrade2、接着安装官方给的opencv依赖包,在终端输入:    sudo apt-get install build-essential

0评论2023-02-10448

在Ubuntu中安装Wine 在ubuntu中安装vmware tools
安装 WINE 安装完 Wine ,先要运行一下 winecfg 英文 wine 官方用户指南 中文 wine 用户指南 一、自Ubuntu 软件库 进行 apt-get 安装 不推荐 sudo apt-get update sudo apt-get install wine 二、从Wine HQ 进行 apt-get 安装 推荐 可以自动更新到 最新 WineH

0评论2023-02-10388

Ubuntu集群 配置ntp服务
1、概述NTP(Network Time Protocol)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的

0评论2023-02-10926

Ubuntu16.04 快速搭建lnmp环境
1.首先更新ubuntu软件源   执行命令:sudo apt-get update2.安装nginx   执行命令:sudo apt-get install nginx   默认web路径在/var/www/html,在浏览器地址栏输入你的地址,如果出现Welcome to Nginx!,说明安装成功3.安装mysql  执行命令:sudo apt

0评论2023-02-10416

ubuntu amd64 的锐捷连接解决办法---武汉大学
    昨日博主闲来弄了个ubuntu玩玩,于是上网成了个问题,博主武大信息学部,锐捷上校园网。装的是13.04的amd64。    凑巧在珞珈山水bbs上看到我在解决上网出现问题出现的相同情况,但是没有人回答,于是博主就在人人mark之后再此mark一下,希望更多朋

0评论2023-02-10384

更多推荐