Linux下mysql基础

使用的是系统自带mysql软件包

1、链接数据库

启动mysql服务器:1是通过gui界面,需安装system-config-services软件包,通过图形化界面来配置;2是通过服务命令# service mysqld start启动服务,服务存放路径/etc/rc.d/init.d

启动后通过 $ ps -el | grep mysql即可看到mysql进程

$ mysql -u root mysql 链接至数据库mysql(用来管理用户和权限到database),删除user表下用户名为空的用户,并指定root密码,增加下安全性

mysql> SET password=PASSWORD(‘123456’); 或直接通过命令行$ mysqladmin -u root password 123456后者会留下命令记录,存在隐患


2、命令相关

介绍下mysqladmin命令两个用处,$ mysqladmin -u root -p version 版本信息;$ mysqladmin -u root -p varialbes 列出当前变量设置,想对变量进行修改可在/etc/my.cnf中修改,如数据文件、日志文件到存放、数据文件的增长性等,-help查看更多

扩展几个命令:

mysql:基础命令,最常用来链接数据库,也可进行导入sql文件,如$ mysql -u root -p123456 mysql < a.sql 若a中执行到是查询,返回查询结果,但不会进入mysql,-help查看更多

mysqldump:导出成sql语句到sql文件,能被重新导入,用来迁徙数据或快速备份很有用

mysqlimport:相对应的可将批量数据导入,接受一文件名和一数据库名做参数,将数据导入到数据库中与文件名(无扩展名)相同的表中,须列数相同,数据类型兼容,tab分隔

mysqlshow:列出所有数据库,或数据库中表,或数据库中表的列,或数据库中表某列属性


3、用户相关

root进入mysql创建个日常操作用户:mysql> GRANT ALL ON *.* TO user@localhost IDENTIFIED BY '123456' 意即创建个权限为ALL的、可操作任何数据库中任何表(databases.talbes配置为*.*)、用户名为user、只能从本机登录、密码为123456的用户,对应到由revoke进行剥夺权利

进行用户配置后,最好进行次权限表重载: mysql> FLUSH PRIVILEGES;


用新用户进入,创建个数据库用来测试

mysql> CREATE DATABASE test;

mysql> \u test

剩下到便是sql语句到事情了,创建表、插入数据、查询等

吐槽下sql中注释...注释符号:'-- '后面还有个空格... 空格..

还有个小小发现:

-- int(m) zerofill时m有效,数据不满m位时填充0,自动转变为unsigned int

CREATE TABLE test( testSN int NOT NULL AUTO_INCREMENT PRIMARY KEY, testCHAR varchar(10), testINT int(3) zerofill);


4、以下为编程相关,参考Linux程序设计:

	MYSQL * conn_ptr;				//mysql链接指针,需使用mysql_init(NULL)进行分配
	conn_ptr = mysql_init(NULL);	//分配新链接或重新初始化一个链接:MYSQL* mysql_init(MYSQL *)

	if( !conn_ptr ) {
		printf("init failed");
		return EXIT_FAILURE;
	}

	unsigned int timeout = 7;
	//mysql设置:int mysql_options(MYSQL *mysql, enum mysql_option option, const void *arg);
	//函数在mysql_init和mysql_real_connect间调用,成功返回0,用来设置mysql链接属性
	int iret = mysql_options(conn_ptr, MYSQL_OPT_CONNECT_TIMEOUT, (const char*)&timeout);
	if( iret ) {
		printf("set options error");
	}

	//建立链接
	conn_ptr = mysql_real_connect(conn_ptr, "localhost", "user", "123456", "test", 0, NULL, 0);
	if( conn_ptr ) {
		printf("connect success\n");
	} else {
		printf("connect failed\n");
	}

	mysql_close(conn_ptr);
	return EXIT_SUCCESS;


gcc编译下

$ gcc -omain mysqltest.c -I/usr/include/mysql -L/usr/lib64/mysql -lmysqlclient

指定下mysql头文件和库文件,编译通过,执行

$ connect success

以下是对提供的参考资料的总结,按照要求结构化多个要点分条输出: 4G/5G无线网络优化与网规案例分析: NSA站点下终端掉4G问题:部分用户反馈NSA终端频繁掉4G,主要因终端主动发起SCGfail导致。分析显示,在信号较好的环境下,终端可能因节能、过热保护等原因主动释放连接。解决方案建议终端侧进行分析处理,尝试关闭节电开关等。 RSSI算法识别天馈遮挡:通过计算RSSI平均值及差值识别天馈遮挡,差值大于3dB则认定有遮挡。不同设备分组规则不同,如64T和32T。此方法可有效帮助现场人员识别因环境变化引起的网络问题。 5G 160M组网小区CA不生效:某5G站点开启100M+60M CA功能后,测试发现UE无法正常使用CA功能。问题原因在于CA频点集标识配置错误,修正后测试正常。 5G网络优化与策略: CCE映射方式优化:针对诺基亚站点覆盖农村区域,通过优化CCE资源映射方式(交织、非交织),提升RRC连接建立成功率和无线接通率。非交织方式相比交织方式有显著提升。 5G AAU两扇区组网:与三扇区组网相比,AAU两扇区组网在RSRP、SINR、下载速率和上传速率上表现不同,需根据具体场景选择适合的组网方式。 5G语音解决方案:包括沿用4G语音解决方案、EPS Fallback方案和VoNR方案。不同方案适用于不同的5G组网策略,如NSA和SA,并影响语音连续性和网络覆盖。 4G网络优化与资源利用: 4G室分设备利旧:面对4G网络投资压减与资源需求矛盾,提出利旧多维度调优策略,包括资源整合、统筹调配既有资源,以满足新增需求和提质增效。 宏站RRU设备1托N射灯:针对5G深度覆盖需求,研究使用宏站AAU结合1托N射灯方案,快速便捷地开通5G站点,提升深度覆盖能力。 基站与流程管理: 爱立信LTE基站邻区添加流程:未提供具体内容,但通常涉及邻区规划、参数配置、测试验证等步骤,以确保基站间顺畅切换和覆盖连续性。 网络规划与策略: 新高铁跨海大桥覆盖方案试点:虽未提供详细内容,但可推测涉及高铁跨海大桥区域的4G/5G网络覆盖规划,需考虑信号穿透、移动性管理、网络容量等因素。 总结: 提供的参考资料涵盖了4G/5G无线网络优化、网规案例分析、网络优化策略、资源利用、基站管理等多个方面。 通过具体案例分析,展示了无线网络优化中的常见问题及解决方案,如NSA终端掉4G、RSSI识别天馈遮挡、CA不生效等。 强调了5G网络优化与策略的重要性,包括CCE映射方式优化、5G语音解决方案、AAU扇区组网选择等。 提出了4G网络优化与资源利用的策略,如室分设备利旧、宏站RRU设备1托N射灯等。 基站与流程管理方面,提到了爱立信LTE基站邻区添加流程,但未给出具体细节。 新高铁跨海大桥覆盖方案试点展示了特殊场景下的网络规划需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值